From 4f34de971c3e67deae395d7b9748758b410c2eac Mon Sep 17 00:00:00 2001 From: Zachary Wilhite Date: Mon, 6 Oct 2025 17:51:56 -0700 Subject: [PATCH 1/6] ALmost finished with phase 1. --- .gitignore | 4 +- README.md | 159 +++++++- analysis_options.yaml | 6 +- docs/changes/phase1-upgrade.md | 132 +++++++ docs/setup.md | 69 ++++ lib/core/config/logging_config.dart | 57 +++ lib/core/providers/repository_providers.dart | 4 +- .../services/adaptive_refresh_manager.dart | 76 ++-- .../services/background_refresh_service.dart | 4 +- lib/core/services/error_reporter.dart | 31 ++ lib/core/services/logger_service.dart | 373 +++++++++++------- .../providers/room_device_view_model.g.dart | 2 +- lib/main.dart | 19 +- lib/main_development.dart | 11 +- lib/main_production.dart | 13 +- lib/main_staging.dart | 20 +- lib/main_staging_debug.dart | 24 +- pubspec.lock | 66 ++-- scripts/build_matrix.sh | 21 + scripts/pre_commit.sh | 21 + 20 files changed, 847 insertions(+), 265 deletions(-) create mode 100644 docs/changes/phase1-upgrade.md create mode 100644 docs/setup.md create mode 100644 lib/core/config/logging_config.dart create mode 100644 lib/core/services/error_reporter.dart create mode 100755 scripts/build_matrix.sh create mode 100755 scripts/pre_commit.sh diff --git a/.gitignore b/.gitignore index e4e61d7..d2322ce 100644 --- a/.gitignore +++ b/.gitignore @@ -37,6 +37,8 @@ migrate_working_dir/ flutter_export_environment.sh **/generated_plugin_registrant.dart linked_packages/ +build_logs/ +coverage/ # Symbolication related app.*.symbols @@ -92,4 +94,4 @@ push-event.json # Fastlane sensitive files android/fastlane/play_store_key.json ios/fastlane/AuthKey_*.p8 -**/.env \ No newline at end of file +**/.env diff --git a/README.md b/README.md index 6fa90a9..f0f1f04 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,151 @@ # RG Nets Field Deployment Kit (FDK) -A Flutter-based mobile application for field technicians to manage network infrastructure devices through integration with RG Nets' rXg network management systems. +RG Nets’ Field Deployment Kit is a multi-platform Flutter app that helps rXg field technicians provision rooms, scan devices, and troubleshoot onsite networks in real time. -## 🎯 Project Status +--- -βœ… **Flutter Setup Complete** -- Flutter project structure created with package `com.rgnets.rgnets_fdk` -- Dependencies configured (Provider, go_router, Dio, etc.) -- Assets organized following Flutter conventions -- Documentation updated with RG Nets branding -- Basic splash screen with dark theme implemented -- Tests passing +## Highlights -## Getting Started +- Technician-first workflow covering onboarding, room inventory, device scanning, issue triage, and debug tools +- Modular architecture with Riverpod, GoRouter, and feature slices for auth, rooms, devices, notifications, and scanner flows +- WebSocket-ready service layer (Phase 2) built on top of the hardened REST/Dio stack with Drift caching +- Offline aware: Drift local stores, background refresh service, and SharedPreferences session cache +- Logging pipeline driven by `LoggerService` with environment-sensitive verbosity and crash-reporting hooks -This project is a starting point for a Flutter application. +--- -A few resources to get you started if this is your first Flutter project: +## Tech Stack -- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) -- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) +| Layer | Tooling | +|-------|---------| +| UI & Navigation | Flutter, GoRouter, hooks_riverpod | +| State & DI | Riverpod, ProviderScope overrides, generated providers | +| Data | Drift, Dio, Retrofit, Freezed, json_serializable | +| Device Capabilities | mobile_scanner, connectivity_plus, battery_plus, image_picker | +| Utilities | logger, fpdart, intl, shared_preferences | +| Build Tooling | build_runner, integration_test, flutter_lints | -For help getting started with Flutter development, view the -[online documentation](https://docs.flutter.dev/), which offers tutorials, -samples, guidance on mobile development, and a full API reference. +--- + +## Quick Start + +### Prerequisites + +- Flutter SDK 3.35.5 (stable) / Dart 3.9.2 +- Xcode 16.4 and CocoaPods 1.16.2 (macOS/iOS builds) +- Android Studio 2025.1 with Android SDK 36 +- macOS 15.6.1 (host) +- Optional: Windows host/CI runner for native Windows builds + +### Installation + +```bash +git clone +cd FDK + +# Fetch dependencies and generated code +flutter pub get +dart run build_runner build --delete-conflicting-outputs +``` + +### Running + +```bash +# Development (synthetic data, verbose logging) +flutter run -t lib/main_development.dart + +# Staging (interurban test API) +flutter run -t lib/main_staging.dart --dart-define=ENVIRONMENT=staging + +# Staging Debug (launches debug dashboard) +flutter run -t lib/main_staging_debug.dart --dart-define=ENVIRONMENT=staging + +# Production (requires secrets provided via --dart-define) +flutter run -t lib/main_production.dart \ + --dart-define=ENVIRONMENT=production \ + --dart-define=API_URL= \ + --dart-define=API_USERNAME= \ + --dart-define=API_KEY= +``` + +### Build Matrix Script + +Use `scripts/build_matrix.sh` to validate Android, iOS (simulator), and macOS builds in one pass (Windows build requires a Windows host): + +```bash +./scripts/build_matrix.sh +# Build logs written to build_logs/.log +``` + +### Pre-commit Checks + +`scripts/pre_commit.sh` runs formatting, analyzer, and tests. Link it into Git hooks: + +```bash +ln -s ../../scripts/pre_commit.sh .git/hooks/pre-commit + +# Skip tests temporarily (legacy suite currently failing) with: +SKIP_TESTS=1 ./scripts/pre_commit.sh +``` + +--- + +## Logging & Telemetry + +- Logging level controlled via `LOG_LEVEL` dart-define (`off`, `error`, `warning`, `info`, `debug`, `trace`). +- Crash reporting toggle via `ENABLE_CRASH_REPORTING` (defaults to true in production). Currently backed by a stub reporter ready for Sentry integration. +- Defaults: development β†’ `debug`, staging β†’ `info`, production β†’ `warning`. + +```bash +flutter run -t lib/main_development.dart \ + --dart-define=LOG_LEVEL=trace \ + --dart-define=ENABLE_CRASH_REPORTING=false +``` + +--- + +## Directory Guide + +``` +lib/ +β”œβ”€ core/ # cross-cutting config, services, utility widgets +β”œβ”€ features/ # feature modules (auth, rooms, devices, scanner, etc.) +β”œβ”€ providers/ # shared provider overrides and DI helpers +β”œβ”€ routes/ # GoRouter configuration +β”œβ”€ main*.dart # environment-specific entrypoints +assets/ # branding, mockups, onboarding art +docs/ # architecture references, plans, reports +scripts/ # automation (build matrix, pre-commit checks) +test/ # unit/widget tests +test_programs/ # exploratory scripts and repros +build_logs/ # generated by build_matrix.sh (ignored) +``` + +--- + +## Testing + +```bash +flutter analyze +flutter test # Note: legacy tests currently fail (RoomModel expectations) +dart run build_runner build --delete-conflicting-outputs +``` + +Known failures are tracked in `docs/changes/phase1-upgrade.md` (Step 3) and will be addressed in subsequent iterations. + +--- + +## Documentation & Plans + +- `docs/setup.md` β€” environment requirements, workflow scripts, troubleshooting. +- `implementationPlan.md` β€” long-range roadmap to surpass ATT-FE-Tool. +- `docs/changes/phase1-upgrade.md` β€” Phase 1 execution log. +- Additional architecture, API, and feature docs live under `docs/`. + +--- + +## Next Steps + +Phase 1 hardening continues with lint clean-up, automated tests, and backend WebSocket preparation. Phase 2 focuses on real-time data channels, offline conflict handling, and enhanced technician dashboards. + +For questions or to coordinate milestones, contact the RG Nets engineering lead overseeing the Field Deployment Kit program. diff --git a/analysis_options.yaml b/analysis_options.yaml index 3b618e0..a1ea98c 100644 --- a/analysis_options.yaml +++ b/analysis_options.yaml @@ -14,6 +14,10 @@ analyzer: - "**/*.g.dart" - "**/*.freezed.dart" - "build/**" + - "test_programs/**" + - "test/**/fixtures/**" + - "lib/core/services/mock_data_service.dart" + - "lib/features/devices/data/datasources/device_mock_data_source.dart" errors: invalid_annotation_target: ignore language: @@ -195,4 +199,4 @@ linter: void_checks: true # Additional information about this file can be found at -# https://dart.dev/guides/language/analysis-options \ No newline at end of file +# https://dart.dev/guides/language/analysis-options diff --git a/docs/changes/phase1-upgrade.md b/docs/changes/phase1-upgrade.md new file mode 100644 index 0000000..c416a1d --- /dev/null +++ b/docs/changes/phase1-upgrade.md @@ -0,0 +1,132 @@ +# Phase 1 – Step 2: Flutter/Dart Upgrade Summary + +| Item | Details | +|------|---------| +| Date | 2025-10-06 | +| Command | `flutter upgrade` | +| Result | Already on latest stable (Flutter 3.35.5, Dart 3.9.2) | +| Channel | `stable` | +| Notes | No further action required; `flutter doctor -v` remains clean after verification. | + +## Verification Commands + +```bash +flutter --version +flutter upgrade +flutter doctor -v +``` + +> All commands completed successfully. No dependency changes were required at this step. + +--- + +## Step 3 – Dependency Harmonization + +### Actions +- Ran `flutter pub get`, `flutter pub upgrade`, and regenerated code with `dart run build_runner build --delete-conflicting-outputs`. +- Updated packages: `built_value`, `code_builder`, `flutter_plugin_android_lifecycle`, `image_picker_android`, `leak_tracker`, `logger`, `mobile_scanner`, `path_provider_android`, `pool`, `retrofit`, `shared_preferences_android`, `sqflite_android`, `sqlite3`, `sqlite3_flutter_libs`, and `url_launcher_android`. +- Regenerated Riverpod/Freezed artifacts (`lib/features/rooms/presentation/providers/room_device_view_model.g.dart`). + +### Validation +- `flutter analyze` reports existing info-level lint hints (20k+) but no new errors were introduced. +- `flutter test` currently fails due to pre-existing expectations in `test/mock_data_test.dart` (`RoomModel` lacks `building`/`floor` getters) and staged environment tests logging noisy output. Logged for follow-up in Phase 1 backlog. + +### Next Steps +- Schedule fixes for failing tests or adjust expectations as part of feature/domain clean-up. +- Consider upgrading analyzer-related packages in a later pass (blocked by legacy constraints). + +--- + +## Step 4 – Multi-platform Build Validation + +### Automation +- Added `scripts/build_matrix.sh` to sequentially run: + - `flutter build apk --debug` + - `flutter build ios --simulator` + - `flutter build macos` + - `flutter build windows` (expected to fail on macOS; see notes) +- Captured outputs in `build_logs/`. + +### Results +- Android debug APK: βœ… builds (`build/app/outputs/flutter-apk/app-debug.apk`). Initial run required cleaning `build/` due to duplicate Kotlin class output from `battery_plus`. +- iOS simulator build: βœ… (`build/ios/iphonesimulator/Runner.app`). +- macOS desktop build: βœ… with warnings from `mobile_scanner` and bundled SQLite3 (deprecated APIs, implicit conversions). +- Windows build: ⚠️ not supported on macOS host; command exits with `"build windows" only supported on Windows hosts.` Log retained as documentation. + +### Follow-up +- Consider suppressing noisy macOS warnings by updating dependencies or compiler flags in future phases. +- Windows build must be executed on a Windows host/CI runner; track as an external action item. + +--- + +## Step 5 – Repo Hygiene & Automation + +### .gitignore Updates +- Added `build_logs/` and `coverage/` to keep generated artifacts out of version control. + +### Automation Script +- Introduced `scripts/pre_commit.sh` to perform: + - `flutter format --set-exit-if-changed .` + - `flutter analyze` + - `flutter test` (skippable via `SKIP_TESTS=1` while legacy tests are repaired) +- Script exits on failure and can be linked into Git hooks: + `ln -s ../../scripts/pre_commit.sh .git/hooks/pre-commit` + +### Notes +- `flutter test` currently fails due to the known `RoomModel` assertions; use `SKIP_TESTS=1` until fixes land. +- Repository is clean after ignoring build logs and pruning stray coverage artifacts. + +--- + +## Step 6 – Logging & Error Handling Enhancements + +### Implemented +- Introduced `core/config/logging_config.dart` to centralise log level and crash reporting configuration (`LOG_LEVEL`, `ENABLE_CRASH_REPORTING`). +- Rebuilt `LoggerService` atop the `logger` package with environment-aware log levels, structured tagging, and trace/debug separation. +- Added `ErrorReporter` stub to funnel errors toward a future crash reporting backend (currently no-op unless enabled). +- Wired all app entrypoints (`main*.dart`) to configure the logger at bootstrap with environment-specific defaults. + +### Impact +- Provides consistent logging output across environments with optional verbose tracing in development. +- Establishes a single hook (`ErrorReporter`) for forwarding critical errors to Sentry or similar services later in Phase 1/2. + +### Follow-up +- Replace the `ErrorReporter` stub with a concrete integration (e.g., Sentry) when credentials/process are available. +- Audit remaining ad-hoc `Logger` usage ensuring everything routes through `LoggerService`. + +--- + +## Step 7 – Documentation Update + +### Deliverables +- Replaced `README.md` with a comprehensive project overview (highlights, tech stack, quick-start commands, logging/env configuration, testing guidance). +- Added `docs/setup.md` capturing environment baselines, scripts, dart-define usage, and troubleshooting tips. +- Documented logging enhancements and scripts throughout the change log for supervisor visibility. + +### Next Actions +- Share README/setup updates with supervisor for alignment. +- Keep `docs/changes/` current as subsequent Phase 1 tasks (lint/tests) close out. + +--- + +## Step 8 – Lint Cleanup Pass (in progress) + +### Analyzer Configuration +- Updated `analysis_options.yaml` to exclude generated/mass-mock sources: + - `test_programs/**`, `test/**/fixtures/**` + - `lib/core/services/mock_data_service.dart` + - `lib/features/devices/data/datasources/device_mock_data_source.dart` +- Goal: focus lint output on production-critical code. + +### Core Fixes +- Reworked logging config/services: + - Const-friendly `LoggingConfig` getters. + - Simplified `ErrorReporter` with direct flag exposure (no setter lint). + - Refactored `LoggerService` conditionals/braces and switched to `Level.trace`. +- Modernised `AdaptiveRefreshManager` (named params, explicit error logging, tear-offs, `unawaited`). + +### Remaining Work +- `flutter analyze` now reports ~5k info-level hints (down from 20k+). Remaining buckets: + - Production code: device/room data layers (`device_remote_data_source.dart`, `device_detail_sections.dart`, `room_remote_data_source.dart`, etc.). + - Test suites: `test/optimization_*` and `test/performance_tests.dart` still need explicit generics so `Future.delayed` inference succeeds. +- After these are resolved, re-enable the excluded mock sources to keep them lint-clean. diff --git a/docs/setup.md b/docs/setup.md new file mode 100644 index 0000000..be831b7 --- /dev/null +++ b/docs/setup.md @@ -0,0 +1,69 @@ +# FDK Setup Guide + +This document captures environment expectations and daily workflows for developing RG Nets Field Deployment Kit. + +## 1. Environment Baseline + +- **Host OS:** macOS 15.6.1 (Apple Silicon) +- **Flutter:** 3.35.5 (stable) +- **Dart:** 3.9.2 +- **Android Studio:** 2025.1 + Android SDK 36 / build-tools 36.1.0-rc1 +- **Xcode:** 16.4, CocoaPods 1.16.2 +- **VS Code:** 1.103.2 (optional) + +Run `flutter doctor -v` to verify tooling. Capture any discrepancies in `docs/changes/`. + +## 2. Initial Setup + +```bash +git clone +cd FDK + +flutter pub get +dart run build_runner build --delete-conflicting-outputs +``` + +For recurring development: + +- `scripts/pre_commit.sh` β€” format, analyze, and test (set `SKIP_TESTS=1` to bypass tests until legacy failures are resolved). +- `scripts/build_matrix.sh` β€” builds Android debug APK, iOS simulator app, and macOS desktop binary; requires macOS host. Windows build runs only on Windows. + +## 3. Environment Variables & dart-defines + +| Key | Purpose | Default | Notes | +|-----|---------|---------|-------| +| `ENVIRONMENT` | Selects environment (development, staging, production) | `development` | Controls API endpoints & feature flags | +| `LOG_LEVEL` | Overrides logging verbosity (`off`, `error`, `warning`, `info`, `debug`, `trace`, `auto`) | auto | Auto resolves based on environment | +| `ENABLE_CRASH_REPORTING` | Enables `ErrorReporter` forwarding | true in production, false otherwise | Placeholder until Sentry integration | +| `API_URL` / `API_USERNAME` / `API_KEY` | Production runtime credentials | none | Required for production run/build | +| `TEST_API_*` | Staging/test overrides (see `AppConfig`) | provided | Used for interurban staging | + +Example: + +```bash +flutter run -t lib/main_staging.dart \ + --dart-define=ENVIRONMENT=staging \ + --dart-define=LOG_LEVEL=debug +``` + +## 4. Known Issues (Phase 1) + +- Legacy unit tests referencing deprecated `RoomModel` getters currently fail (`test/mock_data_test.dart`). Track progress in `docs/changes/phase1-upgrade.md`. +- Flutter analyze emits a large volume of info-level hints from legacy files; clean-up scheduled post Phase 1. + +## 5. Troubleshooting + +- **Android build duplicate class** β€” run `rm -rf build` if `battery_plus` Kotlin classes conflict, then rerun build matrix. +- **Windows build on macOS** β€” expect `"build windows" only supported on Windows hosts`; run on Windows CI/host when required. +- **Podfile.lock changes** β€” remove `ios/Podfile.lock` and `macos/Podfile.lock` after simulator builds to keep repo clean. + +## 6. Useful Commands + +```bash +flutter analyze +flutter test # (fails currently; see Known Issues) +dart run build_runner build --delete-conflicting-outputs +flutter pub outdated +``` + +Log any environment adjustments or notable failures in `docs/changes/phase1-upgrade.md` so future runs remain reproducible. diff --git a/lib/core/config/logging_config.dart b/lib/core/config/logging_config.dart new file mode 100644 index 0000000..6a5c76a --- /dev/null +++ b/lib/core/config/logging_config.dart @@ -0,0 +1,57 @@ +import 'package:rgnets_fdk/core/config/environment.dart'; + +/// Logging levels supported by the application logger. +enum LogLevel { off, error, warning, info, debug, trace } + +/// Centralised logging configuration resolved from compile-time defines or environment. +class LoggingConfig { + LoggingConfig._(); + + /// Desired log level (defaults to environment-specific value). + static LogLevel get logLevel { + const raw = String.fromEnvironment('LOG_LEVEL', defaultValue: 'auto'); + if (raw.isEmpty || raw.toLowerCase() == 'auto') { + return _defaultLevelForEnvironment(); + } + return _parseLogLevel(raw); + } + + /// Whether crash/report forwarding should be enabled. + static bool get crashReportingEnabled { + return bool.fromEnvironment( + 'ENABLE_CRASH_REPORTING', + defaultValue: EnvironmentConfig.isProduction, + ); + } + + static LogLevel _defaultLevelForEnvironment() { + if (EnvironmentConfig.isProduction) { + return LogLevel.warning; + } + if (EnvironmentConfig.isStaging) { + return LogLevel.info; + } + return LogLevel.debug; + } + + static LogLevel _parseLogLevel(String value) { + switch (value.toLowerCase()) { + case 'off': + return LogLevel.off; + case 'error': + return LogLevel.error; + case 'warn': + case 'warning': + return LogLevel.warning; + case 'info': + return LogLevel.info; + case 'debug': + return LogLevel.debug; + case 'trace': + case 'verbose': + return LogLevel.trace; + default: + return _defaultLevelForEnvironment(); + } + } +} diff --git a/lib/core/providers/repository_providers.dart b/lib/core/providers/repository_providers.dart index 654216d..b704580 100644 --- a/lib/core/providers/repository_providers.dart +++ b/lib/core/providers/repository_providers.dart @@ -66,8 +66,8 @@ final deviceDataSourceProvider = Provider((ref) { }); /// Device remote data source provider (for backward compatibility) -final deviceRemoteDataSourceProvider = Provider((ref) { - return ref.watch(deviceDataSourceProvider) as DeviceRemoteDataSourceImpl; +final deviceRemoteDataSourceProvider = Provider((ref) { + return ref.watch(deviceDataSourceProvider); }); /// Room local data source provider diff --git a/lib/core/services/adaptive_refresh_manager.dart b/lib/core/services/adaptive_refresh_manager.dart index 8d59a8f..fd01ef8 100644 --- a/lib/core/services/adaptive_refresh_manager.dart +++ b/lib/core/services/adaptive_refresh_manager.dart @@ -6,12 +6,6 @@ import 'package:flutter_riverpod/flutter_riverpod.dart'; /// Configuration for refresh intervals based on conditions class RefreshConfig { - final Duration foregroundInterval; - final Duration backgroundInterval; - final Duration wifiInterval; - final Duration cellularInterval; - final Duration lowBatteryInterval; - const RefreshConfig({ this.foregroundInterval = const Duration(seconds: 30), this.backgroundInterval = const Duration(minutes: 10), @@ -19,15 +13,23 @@ class RefreshConfig { this.cellularInterval = const Duration(minutes: 2), this.lowBatteryInterval = const Duration(minutes: 15), }); + + final Duration foregroundInterval; + final Duration backgroundInterval; + final Duration wifiInterval; + final Duration cellularInterval; + final Duration lowBatteryInterval; } /// Manages adaptive refresh based on network, battery, and app state class AdaptiveRefreshManager { + AdaptiveRefreshManager({RefreshConfig refreshConfig = const RefreshConfig()}) + : config = refreshConfig; + final RefreshConfig config; final Battery _battery = Battery(); final Connectivity _connectivity = Connectivity(); - Timer? _refreshTimer; bool _isInForeground = true; bool _shouldContinueRefreshing = true; List _currentConnectivity = [ConnectivityResult.none]; @@ -37,24 +39,22 @@ class AdaptiveRefreshManager { // Callbacks VoidCallback? onRefreshNeeded; - AdaptiveRefreshManager({ - this.config = const RefreshConfig(), - }); - /// Initialize and start monitoring Future initialize() async { // Get initial states _currentConnectivity = await _connectivity.checkConnectivity(); _batteryLevel = await _battery.batteryLevel; - + // Monitor battery state _battery.onBatteryStateChanged.listen((BatteryState state) { - _isCharging = state == BatteryState.charging || - state == BatteryState.full; + _isCharging = + state == BatteryState.charging || state == BatteryState.full; }); // Monitor connectivity changes - _connectivity.onConnectivityChanged.listen((List results) { + _connectivity.onConnectivityChanged.listen(( + List results, + ) { _currentConnectivity = results; _updateRefreshInterval(); }); @@ -64,34 +64,42 @@ class AdaptiveRefreshManager { /// Waits AFTER each refresh completes before scheduling the next one void startSequentialRefresh(Future Function() refreshCallback) { _shouldContinueRefreshing = true; - _scheduleNextRefresh(refreshCallback); + unawaited(_scheduleNextRefresh(refreshCallback)); } /// Schedule the next refresh in the sequence - void _scheduleNextRefresh(Future Function() refreshCallback) async { - if (!_shouldContinueRefreshing) return; + Future _scheduleNextRefresh( + Future Function() refreshCallback, + ) async { + if (!_shouldContinueRefreshing) { + return; + } try { // Perform the refresh await refreshCallback(); - + // Calculate wait duration based on current conditions final waitDuration = _calculateRefreshInterval(); - + // Wait AFTER the refresh completes await Future.delayed(waitDuration); - + // Schedule the next refresh if (_shouldContinueRefreshing) { - _scheduleNextRefresh(refreshCallback); + await _scheduleNextRefresh(refreshCallback); } - } catch (e) { + } on Object catch (error, stackTrace) { // On error, wait longer before retrying final errorWaitDuration = _calculateRefreshInterval() * 2; await Future.delayed(errorWaitDuration); - + if (_shouldContinueRefreshing) { - _scheduleNextRefresh(refreshCallback); + await _scheduleNextRefresh(refreshCallback); + } + if (kDebugMode) { + debugPrint('Adaptive refresh retry after error: $error'); + debugPrint(stackTrace.toString()); } } } @@ -113,7 +121,7 @@ class AdaptiveRefreshManager { if (_currentConnectivity.contains(ConnectivityResult.mobile)) { baseInterval = config.cellularInterval; } else if (_currentConnectivity.contains(ConnectivityResult.wifi) || - _currentConnectivity.contains(ConnectivityResult.ethernet)) { + _currentConnectivity.contains(ConnectivityResult.ethernet)) { baseInterval = config.wifiInterval; } else { // No connection - use background interval @@ -141,7 +149,7 @@ class AdaptiveRefreshManager { } /// Set app foreground state - void setForegroundState(bool isInForeground) { + void setForegroundState({required bool isInForeground}) { _isInForeground = isInForeground; _updateRefreshInterval(); } @@ -149,8 +157,6 @@ class AdaptiveRefreshManager { /// Stop refresh timer void stopRefresh() { _shouldContinueRefreshing = false; - _refreshTimer?.cancel(); - _refreshTimer = null; } /// Dispose resources @@ -174,13 +180,11 @@ class AdaptiveRefreshManager { /// Provider for adaptive refresh manager final adaptiveRefreshManagerProvider = Provider((ref) { final manager = AdaptiveRefreshManager(); - - ref.onDispose(() { - manager.dispose(); - }); - + + ref.onDispose(manager.dispose); + // Initialize on creation manager.initialize(); - + return manager; -}); \ No newline at end of file +}); diff --git a/lib/core/services/background_refresh_service.dart b/lib/core/services/background_refresh_service.dart index 1c76658..c8c127b 100644 --- a/lib/core/services/background_refresh_service.dart +++ b/lib/core/services/background_refresh_service.dart @@ -2,8 +2,8 @@ import 'dart:async'; import 'package:logger/logger.dart'; import 'package:rgnets_fdk/core/services/notification_generation_service.dart'; +import 'package:rgnets_fdk/features/devices/data/datasources/device_data_source.dart'; import 'package:rgnets_fdk/features/devices/data/datasources/device_local_data_source.dart'; -import 'package:rgnets_fdk/features/devices/data/datasources/device_remote_data_source.dart'; import 'package:rgnets_fdk/features/devices/data/models/device_model.dart'; import 'package:rgnets_fdk/features/rooms/domain/repositories/room_repository.dart'; @@ -19,7 +19,7 @@ class BackgroundRefreshService { static final _logger = Logger(); - final DeviceRemoteDataSource deviceRemoteDataSource; + final DeviceDataSource deviceRemoteDataSource; final DeviceLocalDataSource deviceLocalDataSource; final RoomRepository roomRepository; final NotificationGenerationService notificationGenerationService; diff --git a/lib/core/services/error_reporter.dart b/lib/core/services/error_reporter.dart new file mode 100644 index 0000000..31b40cd --- /dev/null +++ b/lib/core/services/error_reporter.dart @@ -0,0 +1,31 @@ +import 'package:flutter/foundation.dart'; + +/// Lightweight error reporter stub to centralise crash/telemetry forwarding. +/// +/// Implements a toggleable reporting layer so we can plug in Sentry or another +/// backend without changing call sites. +class ErrorReporter { + ErrorReporter._(); + + static bool isEnabled = false; + + /// Report an error to the configured backend. Currently this is a stub that + /// simply writes to the debug console when enabled. + static void report(Object error, {StackTrace? stackTrace, String? hint}) { + if (!isEnabled) { + if (kDebugMode) { + debugPrint('[ErrorReporter] (disabled) $hint -> $error'); + if (stackTrace != null) { + debugPrint(stackTrace.toString()); + } + } + return; + } + + // TODO(rgnets): Integrate real crash/telemetry backend (e.g., Sentry). + debugPrint('[ErrorReporter] $hint -> $error'); + if (stackTrace != null) { + debugPrint(stackTrace.toString()); + } + } +} diff --git a/lib/core/services/logger_service.dart b/lib/core/services/logger_service.dart index 23dbe1d..c58890d 100644 --- a/lib/core/services/logger_service.dart +++ b/lib/core/services/logger_service.dart @@ -1,160 +1,263 @@ -import 'package:flutter/foundation.dart'; -import 'package:rgnets_fdk/core/config/app_config.dart'; +import 'package:logger/logger.dart'; +import 'package:rgnets_fdk/core/config/logging_config.dart'; +import 'package:rgnets_fdk/core/services/error_reporter.dart'; -/// Logger service for consistent logging throughout the app +/// Logger service for consistent logging throughout the app. class LoggerService { + LoggerService._(); + static const String _tag = 'RGNets-FDK'; - - /// Log debug messages (only in debug mode) + + static LogLevel _currentLevel = LogLevel.debug; + static Logger _logger = _buildLogger(_currentLevel); + + /// Configure the logging service during application bootstrap. + static void configure({LogLevel? level, bool? enableCrashReporting}) { + _currentLevel = level ?? LoggingConfig.logLevel; + _logger = _buildLogger(_currentLevel); + ErrorReporter.isEnabled = + enableCrashReporting ?? LoggingConfig.crashReportingEnabled; + } + + static Logger _buildLogger(LogLevel level) { + return Logger( + level: _toLoggerLevel(level), + printer: PrettyPrinter( + methodCount: level.index >= LogLevel.debug.index ? 2 : 0, + errorMethodCount: 8, + lineLength: 120, + colors: true, + printEmojis: true, + ), + ); + } + + /// Trace-level logging (very verbose, typically disabled outside development). + static void trace(String message, {String? tag}) { + _log(LogLevel.trace, message, tag: tag); + } + + /// Debug-level logging. static void debug(String message, {String? tag}) { - if (kDebugMode && AppConfig.enableLogging) { - debugPrint('[$_tag${tag != null ? ':$tag' : ''}] DEBUG: $message'); - } + _log(LogLevel.debug, message, tag: tag); } - - /// Log info messages + + /// Info-level logging. static void info(String message, {String? tag}) { - if (AppConfig.enableLogging) { - debugPrint('[$_tag${tag != null ? ':$tag' : ''}] INFO: $message'); - } + _log(LogLevel.info, message, tag: tag); } - - /// Log warning messages + + /// Warning-level logging. static void warning(String message, {String? tag}) { - if (AppConfig.enableLogging) { - debugPrint('[$_tag${tag != null ? ':$tag' : ''}] WARNING: $message'); - } + _log(LogLevel.warning, message, tag: tag); } - - /// Log error messages - static void error(String message, {Object? error, StackTrace? stackTrace, String? tag}) { - if (AppConfig.enableLogging) { - debugPrint('[$_tag${tag != null ? ':$tag' : ''}] ERROR: $message'); - if (error != null) { - debugPrint('[$_tag${tag != null ? ':$tag' : ''}] ERROR Details: $error'); - } - if (stackTrace != null && kDebugMode) { - debugPrint('[$_tag${tag != null ? ':$tag' : ''}] Stack Trace:\n$stackTrace'); - } - } + + /// Error-level logging with optional crash reporting. + static void error( + String message, { + Object? error, + StackTrace? stackTrace, + String? tag, + }) { + _log( + LogLevel.error, + message, + tag: tag, + error: error, + stackTrace: stackTrace, + ); + + final reportPayload = error ?? message; + ErrorReporter.report( + reportPayload, + stackTrace: stackTrace, + hint: tag ?? message, + ); } - - /// Log API requests (only in debug mode) - static void apiRequest(String method, String path, {Map? headers, dynamic body}) { - if (kDebugMode && AppConfig.enableLogging) { - debugPrint('[$_tag:API] REQUEST: $method $path'); - if (headers != null && headers.isNotEmpty) { - debugPrint('[$_tag:API] Headers: $headers'); - } - if (body != null) { - debugPrint('[$_tag:API] Body: $body'); - } + + /// Log outgoing API requests (debug/trace). + static void apiRequest( + String method, + String path, { + Map? headers, + dynamic body, + }) { + if (!_shouldLog(LogLevel.debug)) { + return; + } + _log(LogLevel.debug, 'REQUEST: $method $path', tag: 'API'); + if (headers != null && headers.isNotEmpty) { + _log(LogLevel.trace, 'Headers: $headers', tag: 'API'); + } + if (body != null) { + final bodyStr = body.toString(); + final truncated = bodyStr.length > 800 + ? '${bodyStr.substring(0, 800)}... [truncated]' + : bodyStr; + _log(LogLevel.trace, 'Body: $truncated', tag: 'API'); } } - - /// Log API responses (only in debug mode) + + /// Log API responses (debug/trace). static void apiResponse(int? statusCode, String path, {dynamic data}) { - if (kDebugMode && AppConfig.enableLogging) { - debugPrint('[$_tag:API] RESPONSE: ${statusCode ?? 'Unknown'} $path'); - if (data != null && kDebugMode) { - // Truncate large responses - final dataStr = data.toString(); - if (dataStr.length > 500) { - debugPrint('[$_tag:API] Data: ${dataStr.substring(0, 500)}... [truncated]'); - } else { - debugPrint('[$_tag:API] Data: $dataStr'); - } - } + if (!_shouldLog(LogLevel.debug)) { + return; + } + _log( + LogLevel.debug, + 'RESPONSE: ${statusCode ?? 'Unknown'} $path', + tag: 'API', + ); + if (data != null && _shouldLog(LogLevel.trace)) { + final dataStr = data.toString(); + final truncated = dataStr.length > 800 + ? '${dataStr.substring(0, 800)}... [truncated]' + : dataStr; + _log(LogLevel.trace, 'Data: $truncated', tag: 'API'); } } - - /// Log API errors + + /// Log API errors. static void apiError(String path, Object error, {int? statusCode}) { - if (AppConfig.enableLogging) { - debugPrint('[$_tag:API] ERROR: ${statusCode ?? 'Unknown'} $path'); - debugPrint('[$_tag:API] Error: $error'); - } + _log( + LogLevel.error, + 'ERROR: ${statusCode ?? 'Unknown'} $path', + tag: 'API', + error: error, + ); } - - /// Log room data structure for debugging device extraction - static void logRoomDataStructure(String roomId, Map roomData) { - if (kDebugMode && AppConfig.enableLogging) { - debugPrint('[$_tag:ROOM] Analyzing Room $roomId Data Structure:'); - debugPrint('[$_tag:ROOM] Room Keys: ${roomData.keys.toList()}'); - - // Check access points structure - if (roomData.containsKey('access_points')) { - final aps = roomData['access_points'] as List?; - if (aps != null && aps.isNotEmpty) { - debugPrint('[$_tag:ROOM] Access Points Count: ${aps.length}'); - if (aps.first is Map) { - final firstAp = aps.first as Map; - debugPrint('[$_tag:ROOM] First AP Keys: ${firstAp.keys.toList()}'); - debugPrint('[$_tag:ROOM] Has pms_room_id: ${firstAp.containsKey('pms_room_id')}'); - debugPrint('[$_tag:ROOM] Has room_id: ${firstAp.containsKey('room_id')}'); - if (firstAp.containsKey('pms_room_id')) { - debugPrint('[$_tag:ROOM] pms_room_id value: ${firstAp['pms_room_id']}'); - } - } - } else { - debugPrint('[$_tag:ROOM] No access points in response'); - } + + /// Log room data structures for debugging extraction routines. + static void logRoomDataStructure( + String roomId, + Map roomData, + ) { + if (!_shouldLog(LogLevel.debug)) { + return; + } + _log(LogLevel.debug, 'Analyzing Room $roomId Data Structure:', tag: 'ROOM'); + _log(LogLevel.debug, 'Room Keys: ${roomData.keys.toList()}', tag: 'ROOM'); + + void logCollection(String key) { + if (!roomData.containsKey(key)) { + return; } - - // Check media converters structure - if (roomData.containsKey('media_converters')) { - final mcs = roomData['media_converters'] as List?; - if (mcs != null && mcs.isNotEmpty) { - debugPrint('[$_tag:ROOM] Media Converters Count: ${mcs.length}'); - if (mcs.first is Map) { - final firstMc = mcs.first as Map; - debugPrint('[$_tag:ROOM] First MC Keys: ${firstMc.keys.toList()}'); - debugPrint('[$_tag:ROOM] Has pms_room_id: ${firstMc.containsKey('pms_room_id')}'); - debugPrint('[$_tag:ROOM] Has room_id: ${firstMc.containsKey('room_id')}'); - if (firstMc.containsKey('pms_room_id')) { - debugPrint('[$_tag:ROOM] pms_room_id value: ${firstMc['pms_room_id']}'); - } - } - } else { - debugPrint('[$_tag:ROOM] No media converters in response'); - } + final collection = roomData[key] as List?; + if (collection == null || collection.isEmpty) { + _log(LogLevel.debug, 'No $key entries in response', tag: 'ROOM'); + return; } - - // Check infrastructure devices structure - if (roomData.containsKey('infrastructure_devices')) { - final devices = roomData['infrastructure_devices'] as List?; - if (devices != null && devices.isNotEmpty) { - debugPrint('[$_tag:ROOM] Infrastructure Devices Count: ${devices.length}'); - if (devices.first is Map) { - final firstDevice = devices.first as Map; - debugPrint('[$_tag:ROOM] First Device Keys: ${firstDevice.keys.toList()}'); - debugPrint('[$_tag:ROOM] Has pms_room_id: ${firstDevice.containsKey('pms_room_id')}'); - debugPrint('[$_tag:ROOM] Has room_id: ${firstDevice.containsKey('room_id')}'); - if (firstDevice.containsKey('pms_room_id')) { - debugPrint('[$_tag:ROOM] pms_room_id value: ${firstDevice['pms_room_id']}'); - } - } - } else { - debugPrint('[$_tag:ROOM] No infrastructure devices in response'); - } + _log(LogLevel.debug, '$key Count: ${collection.length}', tag: 'ROOM'); + final first = collection.first; + if (first is Map) { + _log( + LogLevel.trace, + 'First $key Keys: ${first.keys.toList()}', + tag: 'ROOM', + ); + _log( + LogLevel.trace, + 'Has pms_room_id: ${first.containsKey('pms_room_id')}', + tag: 'ROOM', + ); + _log( + LogLevel.trace, + 'Has room_id: ${first.containsKey('room_id')}', + tag: 'ROOM', + ); } } + + logCollection('access_points'); + logCollection('media_converters'); + logCollection('infrastructure_devices'); } - - /// Log device extraction results - static void logDeviceExtraction(String roomId, List extractedIds, {int? totalInResponse}) { - if (AppConfig.enableLogging) { - debugPrint('[$_tag:EXTRACT] Device Extraction for Room $roomId:'); - debugPrint('[$_tag:EXTRACT] Extracted ${extractedIds.length} device IDs'); - if (totalInResponse != null) { - debugPrint('[$_tag:EXTRACT] Total devices in API response: $totalInResponse'); - if (totalInResponse > extractedIds.length) { - debugPrint('[$_tag:EXTRACT] ⚠️ Filtered out ${totalInResponse - extractedIds.length} devices'); - } - } - if (extractedIds.isNotEmpty && kDebugMode) { - debugPrint('[$_tag:EXTRACT] Device IDs: ${extractedIds.take(5).toList()}${extractedIds.length > 5 ? '... and ${extractedIds.length - 5} more' : ''}'); + + /// Log device extraction results. + static void logDeviceExtraction( + String roomId, + List extractedIds, { + int? totalInResponse, + }) { + if (!_shouldLog(LogLevel.info)) { + return; + } + _log(LogLevel.info, 'Device Extraction for Room $roomId:', tag: 'EXTRACT'); + _log( + LogLevel.info, + 'Extracted ${extractedIds.length} device IDs', + tag: 'EXTRACT', + ); + + if (totalInResponse != null) { + _log( + LogLevel.info, + 'Total devices in API response: $totalInResponse', + tag: 'EXTRACT', + ); + if (totalInResponse > extractedIds.length) { + _log( + LogLevel.warning, + 'Filtered out ${totalInResponse - extractedIds.length} devices', + tag: 'EXTRACT', + ); } } + + if (extractedIds.isNotEmpty && _shouldLog(LogLevel.debug)) { + final preview = extractedIds.take(5).toList(); + final suffix = extractedIds.length > 5 + ? '... and ${extractedIds.length - 5} more' + : ''; + _log(LogLevel.debug, 'Device IDs: $preview$suffix', tag: 'EXTRACT'); + } + } + + static void _log( + LogLevel level, + String message, { + String? tag, + Object? error, + StackTrace? stackTrace, + }) { + if (!_shouldLog(level)) { + return; + } + final formatted = tag != null + ? '[$_tag:$tag] $message' + : '[$_tag] $message'; + _logger.log( + _toLoggerLevel(level), + formatted, + error: error, + stackTrace: stackTrace, + ); + } + + static bool _shouldLog(LogLevel level) { + if (level == LogLevel.off) { + return false; + } + if (_currentLevel == LogLevel.off) { + return false; + } + return level.index <= _currentLevel.index; + } + + static Level _toLoggerLevel(LogLevel level) { + switch (level) { + case LogLevel.off: + return Level.off; + case LogLevel.error: + return Level.error; + case LogLevel.warning: + return Level.warning; + case LogLevel.info: + return Level.info; + case LogLevel.debug: + return Level.debug; + case LogLevel.trace: + return Level.trace; + } } -} \ No newline at end of file +} diff --git a/lib/features/rooms/presentation/providers/room_device_view_model.g.dart b/lib/features/rooms/presentation/providers/room_device_view_model.g.dart index 40f6186..c7cd7e2 100644 --- a/lib/features/rooms/presentation/providers/room_device_view_model.g.dart +++ b/lib/features/rooms/presentation/providers/room_device_view_model.g.dart @@ -7,7 +7,7 @@ part of 'room_device_view_model.dart'; // ************************************************************************** String _$roomDeviceNotifierHash() => - r'798eaa562d8d8dac1f9b0cb0fb3d4ca705640ae0'; + r'038a39e6f2a885af97c1a821d6ab1612988ab23b'; /// Copied from Dart SDK class _SystemHash { diff --git a/lib/main.dart b/lib/main.dart index 65de0c8..3ee652c 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -4,16 +4,20 @@ import 'package:rgnets_fdk/core/config/environment.dart'; import 'package:rgnets_fdk/core/navigation/app_router.dart'; import 'package:rgnets_fdk/core/providers/core_providers.dart'; import 'package:rgnets_fdk/core/providers/repository_providers.dart'; +import 'package:rgnets_fdk/core/services/logger_service.dart'; import 'package:rgnets_fdk/core/theme/app_theme.dart'; import 'package:shared_preferences/shared_preferences.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); - + // Set environment from dart-define - const envString = String.fromEnvironment('ENVIRONMENT', defaultValue: 'development'); + const envString = String.fromEnvironment( + 'ENVIRONMENT', + defaultValue: 'development', + ); // Starting app - environment info available via EnvironmentConfig - + Environment env; switch (envString.toLowerCase()) { case 'staging': @@ -27,10 +31,11 @@ void main() async { env = Environment.development; break; } - + EnvironmentConfig.setEnvironment(env); + LoggerService.configure(); // Environment configuration complete - details available via EnvironmentConfig getters - + // Initialize providers with error handling late final SharedPreferences sharedPreferences; try { @@ -40,7 +45,7 @@ void main() async { debugPrint('Failed to initialize SharedPreferences: $e'); return; } - + runApp( ProviderScope( overrides: [ @@ -79,4 +84,4 @@ class _FDKAppState extends ConsumerState { routerConfig: AppRouter.router, ); } -} \ No newline at end of file +} diff --git a/lib/main_development.dart b/lib/main_development.dart index e74f5d8..7adee4d 100644 --- a/lib/main_development.dart +++ b/lib/main_development.dart @@ -1,17 +1,20 @@ import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:rgnets_fdk/core/config/environment.dart'; +import 'package:rgnets_fdk/core/config/logging_config.dart'; import 'package:rgnets_fdk/core/navigation/app_router.dart'; import 'package:rgnets_fdk/core/providers/core_providers.dart'; import 'package:rgnets_fdk/core/theme/app_theme.dart'; +import 'package:rgnets_fdk/core/services/logger_service.dart'; import 'package:shared_preferences/shared_preferences.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); - + // Set environment to development - uses synthetic data, no auth required EnvironmentConfig.setEnvironment(Environment.development); - + LoggerService.configure(level: LogLevel.debug, enableCrashReporting: false); + // Initialize providers with error handling late final SharedPreferences sharedPreferences; try { @@ -20,7 +23,7 @@ void main() async { debugPrint('Failed to initialize SharedPreferences: $e'); return; } - + runApp( ProviderScope( overrides: [ @@ -45,4 +48,4 @@ class FDKApp extends StatelessWidget { routerConfig: AppRouter.router, ); } -} \ No newline at end of file +} diff --git a/lib/main_production.dart b/lib/main_production.dart index a0305cd..0779d68 100644 --- a/lib/main_production.dart +++ b/lib/main_production.dart @@ -1,6 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:rgnets_fdk/core/config/environment.dart'; +import 'package:rgnets_fdk/core/services/logger_service.dart'; import 'package:rgnets_fdk/core/navigation/app_router.dart'; import 'package:rgnets_fdk/core/providers/core_providers.dart'; import 'package:rgnets_fdk/core/theme/app_theme.dart'; @@ -8,10 +9,11 @@ import 'package:shared_preferences/shared_preferences.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); - + // Set environment to production EnvironmentConfig.setEnvironment(Environment.production); - + LoggerService.configure(); + // Initialize providers with error handling late final SharedPreferences sharedPreferences; try { @@ -20,7 +22,7 @@ void main() async { debugPrint('Failed to initialize SharedPreferences: $e'); return; } - + runApp( ProviderScope( overrides: [ @@ -38,11 +40,12 @@ class FDKApp extends StatelessWidget { Widget build(BuildContext context) { return MaterialApp.router( title: 'RG Nets FDK', - debugShowCheckedModeBanner: false, // Never show debug banner in production + debugShowCheckedModeBanner: + false, // Never show debug banner in production theme: AppTheme.darkTheme, darkTheme: AppTheme.darkTheme, themeMode: ThemeMode.dark, routerConfig: AppRouter.router, ); } -} \ No newline at end of file +} diff --git a/lib/main_staging.dart b/lib/main_staging.dart index eae62cb..bdb3fd8 100644 --- a/lib/main_staging.dart +++ b/lib/main_staging.dart @@ -1,26 +1,26 @@ import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:logger/logger.dart'; import 'package:rgnets_fdk/core/config/environment.dart'; +import 'package:rgnets_fdk/core/config/logging_config.dart'; import 'package:rgnets_fdk/core/navigation/app_router.dart'; import 'package:rgnets_fdk/core/providers/core_providers.dart'; +import 'package:rgnets_fdk/core/services/logger_service.dart'; import 'package:rgnets_fdk/core/theme/app_theme.dart'; import 'package:shared_preferences/shared_preferences.dart'; void main() async { - final logger = Logger() - ..i('STAGING APP STARTING - main_staging.dart entry point'); WidgetsFlutterBinding.ensureInitialized(); - - logger.i('SETTING ENVIRONMENT TO STAGING'); // Set environment to staging - uses interurban test API with auto-auth EnvironmentConfig.setEnvironment(Environment.staging); - - logger.i('INITIALIZING PROVIDERS'); + LoggerService.configure(level: LogLevel.info); + LoggerService.info('STAGING APP STARTING - main_staging.dart entry point'); + LoggerService.info('SETTING ENVIRONMENT TO STAGING'); + + LoggerService.info('INITIALIZING PROVIDERS'); // Initialize providers final sharedPreferences = await SharedPreferences.getInstance(); - - logger.i('LAUNCHING APP WITH PROVIDER SCOPE'); + + LoggerService.info('LAUNCHING APP WITH PROVIDER SCOPE'); runApp( ProviderScope( overrides: [ @@ -45,4 +45,4 @@ class FDKApp extends StatelessWidget { routerConfig: AppRouter.router, ); } -} \ No newline at end of file +} diff --git a/lib/main_staging_debug.dart b/lib/main_staging_debug.dart index d0a3e98..b74fc43 100644 --- a/lib/main_staging_debug.dart +++ b/lib/main_staging_debug.dart @@ -1,27 +1,29 @@ import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:go_router/go_router.dart'; -import 'package:logger/logger.dart'; import 'package:rgnets_fdk/core/config/environment.dart'; +import 'package:rgnets_fdk/core/config/logging_config.dart'; import 'package:rgnets_fdk/core/providers/core_providers.dart'; +import 'package:rgnets_fdk/core/services/logger_service.dart'; import 'package:rgnets_fdk/core/theme/app_theme.dart'; import 'package:rgnets_fdk/features/debug/debug_screen.dart'; import 'package:shared_preferences/shared_preferences.dart'; void main() async { - final logger = Logger() - ..i('πŸš€ STAGING DEBUG APP STARTING - main_staging_debug.dart entry point'); WidgetsFlutterBinding.ensureInitialized(); - - logger.i('πŸ“Š SETTING ENVIRONMENT TO STAGING'); // Set environment to staging - uses interurban test API with auto-auth EnvironmentConfig.setEnvironment(Environment.staging); - - logger.i('πŸ”§ INITIALIZING PROVIDERS'); + LoggerService.configure(level: LogLevel.debug); + LoggerService.info( + 'πŸš€ STAGING DEBUG APP STARTING - main_staging_debug.dart entry point', + ); + LoggerService.info('πŸ“Š SETTING ENVIRONMENT TO STAGING'); + + LoggerService.info('πŸ”§ INITIALIZING PROVIDERS'); // Initialize providers final sharedPreferences = await SharedPreferences.getInstance(); - - logger.i('πŸ—οΈ LAUNCHING DEBUG APP'); + + LoggerService.info('πŸ—οΈ LAUNCHING DEBUG APP'); runApp( ProviderScope( overrides: [ @@ -47,7 +49,7 @@ class FDKDebugApp extends StatelessWidget { ), ], ); - + return MaterialApp.router( title: 'RG Nets FDK Debug (Staging)', debugShowCheckedModeBanner: false, @@ -57,4 +59,4 @@ class FDKDebugApp extends StatelessWidget { routerConfig: router, ); } -} \ No newline at end of file +} diff --git a/pubspec.lock b/pubspec.lock index b4a726f..9bb92f2 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -125,10 +125,10 @@ packages: dependency: transitive description: name: built_value - sha256: ba95c961bafcd8686d1cf63be864eb59447e795e124d98d6a27d91fcd13602fb + sha256: a30f0a0e38671e89a492c44d005b5545b830a961575bbd8336d42869ff71066d url: "https://pub.dev" source: hosted - version: "8.11.1" + version: "8.12.0" cached_network_image: dependency: "direct main" description: @@ -197,10 +197,10 @@ packages: dependency: transitive description: name: code_builder - sha256: "0ec10bf4a89e4c613960bf1e8b42c64127021740fb21640c29c909826a5eea3e" + sha256: "11654819532ba94c34de52ff5feb52bd81cba1de00ef2ed622fd50295f9d4243" url: "https://pub.dev" source: hosted - version: "4.10.1" + version: "4.11.0" collection: dependency: "direct main" description: @@ -423,10 +423,10 @@ packages: dependency: transitive description: name: flutter_plugin_android_lifecycle - sha256: "6382ce712ff69b0f719640ce957559dde459e55ecd433c767e06d139ddf16cab" + sha256: b0694b7fb1689b0e6cc193b3f1fcac6423c4f93c74fb20b806c6b6f196db0c31 url: "https://pub.dev" source: hosted - version: "2.0.29" + version: "2.0.30" flutter_riverpod: dependency: "direct main" description: @@ -550,10 +550,10 @@ packages: dependency: transitive description: name: image_picker_android - sha256: e83b2b05141469c5e19d77e1dfa11096b6b1567d09065b2265d7c6904560050c + sha256: "8dfe08ea7fcf7467dbaf6889e72eebd5e0d6711caae201fdac780eb45232cd02" url: "https://pub.dev" source: hosted - version: "0.8.13" + version: "0.8.13+3" image_picker_for_web: dependency: transitive description: @@ -651,10 +651,10 @@ packages: dependency: transitive description: name: leak_tracker - sha256: "8dcda04c3fc16c14f48a7bb586d4be1f0d1572731b6d81d51772ef47c02081e0" + sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" url: "https://pub.dev" source: hosted - version: "11.0.1" + version: "11.0.2" leak_tracker_flutter_testing: dependency: transitive description: @@ -683,10 +683,10 @@ packages: dependency: "direct main" description: name: logger - sha256: "55d6c23a6c15db14920e037fe7e0dc32e7cdaf3b64b4b25df2d541b5b6b81c0c" + sha256: a7967e31b703831a893bbc3c3dd11db08126fe5f369b5c648a36f821979f5be3 url: "https://pub.dev" source: hosted - version: "2.6.1" + version: "2.6.2" logging: dependency: transitive description: @@ -731,10 +731,10 @@ packages: dependency: "direct main" description: name: mobile_scanner - sha256: "54005bdea7052d792d35b4fef0f84ec5ddc3a844b250ecd48dc192fb9b4ebc95" + sha256: "5e7e09d904dc01de071b79b3f3789b302b0ed3c9c963109cd3f83ad90de62ecf" url: "https://pub.dev" source: hosted - version: "7.0.1" + version: "7.1.2" mocktail: dependency: "direct dev" description: @@ -803,10 +803,10 @@ packages: dependency: transitive description: name: path_provider_android - sha256: d0d310befe2c8ab9e7f393288ccbb11b60c019c6b5afc21973eeee4dda2b35e9 + sha256: "993381400e94d18469750e5b9dcb8206f15bc09f9da86b9e44a9b0092a0066db" url: "https://pub.dev" source: hosted - version: "2.2.17" + version: "2.2.18" path_provider_foundation: dependency: transitive description: @@ -915,10 +915,10 @@ packages: dependency: transitive description: name: pool - sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" + sha256: "978783255c543aa3586a1b3c21f6e9d720eb315376a915872c61ef8b5c20177d" url: "https://pub.dev" source: hosted - version: "1.5.1" + version: "1.5.2" process: dependency: transitive description: @@ -963,10 +963,10 @@ packages: dependency: "direct main" description: name: retrofit - sha256: d6361d2e344fdc175457ab11eb5225180be99d3773286d9a2fabdf70559afdfc + sha256: be571b11e3d7c62d0894fc193d1199864f761fc84bf8ccca5efe0bb0b6b0c38b url: "https://pub.dev" source: hosted - version: "4.7.1" + version: "4.7.3" retrofit_generator: dependency: "direct dev" description: @@ -1027,10 +1027,10 @@ packages: dependency: transitive description: name: shared_preferences_android - sha256: "5bcf0772a761b04f8c6bf814721713de6f3e5d9d89caf8d3fe031b02a342379e" + sha256: "0b0f98d535319cb5cdd4f65783c2a54ee6d417a2f093dbb18be3e36e4c3d181f" url: "https://pub.dev" source: hosted - version: "2.4.11" + version: "2.4.14" shared_preferences_foundation: dependency: transitive description: @@ -1144,10 +1144,10 @@ packages: dependency: transitive description: name: sqflite_android - sha256: "2b3070c5fa881839f8b402ee4a39c1b4d561704d4ebbbcfb808a119bc2a1701b" + sha256: ecd684501ebc2ae9a83536e8b15731642b9570dc8623e0073d227d0ee2bfea88 url: "https://pub.dev" source: hosted - version: "2.4.1" + version: "2.4.2+2" sqflite_common: dependency: transitive description: @@ -1176,18 +1176,18 @@ packages: dependency: transitive description: name: sqlite3 - sha256: f393d92c71bdcc118d6203d07c991b9be0f84b1a6f89dd4f7eed348131329924 + sha256: "5c225083e72ea56c96d94ba1dd14fb89c8bb7731c8496ee840ab77be9bb67ae2" url: "https://pub.dev" source: hosted - version: "2.9.0" + version: "2.9.1" sqlite3_flutter_libs: dependency: "direct main" description: name: sqlite3_flutter_libs - sha256: "2b03273e71867a8a4d030861fc21706200debe5c5858a4b9e58f4a1c129586a4" + sha256: "69c80d812ef2500202ebd22002cbfc1b6565e9ff56b2f971e757fac5d42294df" url: "https://pub.dev" source: hosted - version: "0.5.39" + version: "0.5.40" sqlparser: dependency: transitive description: @@ -1312,10 +1312,10 @@ packages: dependency: transitive description: name: url_launcher_android - sha256: "0aedad096a85b49df2e4725fa32118f9fa580f3b14af7a2d2221896a02cd5656" + sha256: c0fb544b9ac7efa10254efaf00a951615c362d1ea1877472f8f6c0fa00fcf15b url: "https://pub.dev" source: hosted - version: "6.3.17" + version: "6.3.23" url_launcher_ios: dependency: transitive description: @@ -1392,10 +1392,10 @@ packages: dependency: transitive description: name: watcher - sha256: "0b7fd4a0bbc4b92641dbf20adfd7e3fd1398fe17102d94b674234563e110088a" + sha256: "592ab6e2892f67760543fb712ff0177f4ec76c031f02f5b4ff8d3fc5eb9fb61a" url: "https://pub.dev" source: hosted - version: "1.1.2" + version: "1.1.4" web: dependency: transitive description: @@ -1462,4 +1462,4 @@ packages: version: "3.1.3" sdks: dart: ">=3.9.0 <4.0.0" - flutter: ">=3.29.0" + flutter: ">=3.35.0" diff --git a/scripts/build_matrix.sh b/scripts/build_matrix.sh new file mode 100755 index 0000000..6068252 --- /dev/null +++ b/scripts/build_matrix.sh @@ -0,0 +1,21 @@ +#!/bin/bash +set -euo pipefail + +LOG_DIR="$(cd "$(dirname "$0")/.." && pwd)/build_logs" +mkdir -p "$LOG_DIR" + +run_build() { + local name="$1" + local cmd="$2" + local log_file="$LOG_DIR/${name}.log" + echo "Running $name..." + (set -x; eval "$cmd") &>"$log_file" && echo "$name succeeded" || { + echo "$name failed. See $log_file" >&2 + return 1 + } +} + +run_build "apk_debug" "flutter build apk --debug" +run_build "ios_simulator" "flutter build ios --simulator" +run_build "macos" "flutter build macos" +run_build "windows" "flutter build windows" diff --git a/scripts/pre_commit.sh b/scripts/pre_commit.sh new file mode 100755 index 0000000..10cb887 --- /dev/null +++ b/scripts/pre_commit.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +set -euo pipefail + +PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +cd "$PROJECT_ROOT" + +echo "Checking Dart formatting..." +flutter format --set-exit-if-changed . + +echo "Running flutter analyze..." +flutter analyze + +if [[ "${SKIP_TESTS:-0}" == "1" ]]; then + echo "Skipping flutter test (set SKIP_TESTS=0 to enable)." +else + echo "Running flutter test..." + flutter test +fi + +echo "Pre-commit checks completed." From 6675dfe1b1568b6842b38b6e328299e5a1662314 Mon Sep 17 00:00:00 2001 From: Zachary Wilhite Date: Tue, 7 Oct 2025 15:16:07 -0700 Subject: [PATCH 2/6] 1st Phase finished --- analysis_options.yaml | 1 + android/app/build.gradle.kts | 6 +- devtools_options.yaml | 3 + docs/changes/phase1-upgrade.md | 26 +- lib/core/constants/device_field_sets.dart | 42 +- lib/core/providers/repository_providers.dart | 38 +- .../widgets/connection_details_dialog.dart | 167 +++-- .../device_remote_data_source.dart | 259 ++++---- .../devices/data/models/device_model.dart | 3 +- .../data/repositories/device_repository.dart | 11 +- .../devices/domain/entities/room.dart | 16 +- .../providers/devices_provider.dart | 138 +++-- .../screens/device_detail_screen.dart | 82 ++- .../widgets/device_detail_sections.dart | 135 ++-- .../datasources/room_mock_data_source.dart | 79 +-- .../datasources/room_remote_data_source.dart | 198 +++--- .../providers/room_device_view_model.dart | 117 ++-- .../providers/settings_riverpod_provider.dart | 192 +++--- .../settings_riverpod_provider.g.dart | 25 +- .../presentation/screens/settings_screen.dart | 574 +++++++++++------- lib/main_development.dart | 2 +- lib/main_production.dart | 2 +- ...alyze_building_floor_usage_iteration1.dart | 195 +++--- ...alyze_building_floor_usage_iteration2.dart | 220 +++---- ...alyze_building_floor_usage_iteration3.dart | 214 ++++--- scripts/analyze_room_data_architecture.dart | 222 +++---- scripts/analyze_room_display_lines.dart | 217 +++---- scripts/analyze_staging_fallback.dart | 180 +++--- scripts/check_room_entity_names.dart | 126 ++-- scripts/complete_room_fix_implementation.dart | 303 ++++----- .../comprehensive_device_type_analysis.dart | 207 ++++--- scripts/comprehensive_integration_test.dart | 189 +++--- scripts/diagnose_cache_type_error.dart | 281 ++++----- scripts/diagnose_device_entity_issues.dart | 195 +++--- scripts/diagnose_devices_tab_crash.dart | 189 ------ scripts/diagnose_devices_view_crash.dart | 162 ----- scripts/diagnose_mock_data_flow.dart | 153 ----- scripts/diagnose_room_devices_spinner.dart | 156 ----- scripts/diagnose_room_display_issue.dart | 139 ----- scripts/diagnose_staging_api.dart | 276 +++------ .../domain/usecases/get_devices_test.dart | 21 +- .../devices_screen_network_info_test.dart | 18 +- .../rooms/domain/usecases/get_rooms_test.dart | 32 +- .../domain/usecases/process_barcode_test.dart | 45 +- .../usecases/start_scan_session_test.dart | 34 +- .../usecases/validate_device_scan_test.dart | 35 +- .../domain/usecases/clear_cache_test.dart | 34 +- .../domain/usecases/export_settings_test.dart | 36 +- .../domain/usecases/get_settings_test.dart | 26 +- .../domain/usecases/import_settings_test.dart | 44 +- .../domain/usecases/reset_settings_test.dart | 30 +- .../domain/usecases/update_settings_test.dart | 32 +- test/mock_data_test.dart | 25 +- test/optimization_verification_test.dart | 40 +- test/parallel_error_handling_test.dart | 6 +- test/performance_tests.dart | 26 +- 56 files changed, 2923 insertions(+), 3301 deletions(-) create mode 100644 devtools_options.yaml delete mode 100644 scripts/diagnose_devices_tab_crash.dart delete mode 100644 scripts/diagnose_devices_view_crash.dart delete mode 100644 scripts/diagnose_mock_data_flow.dart delete mode 100644 scripts/diagnose_room_devices_spinner.dart delete mode 100644 scripts/diagnose_room_display_issue.dart diff --git a/analysis_options.yaml b/analysis_options.yaml index a1ea98c..c4e3354 100644 --- a/analysis_options.yaml +++ b/analysis_options.yaml @@ -18,6 +18,7 @@ analyzer: - "test/**/fixtures/**" - "lib/core/services/mock_data_service.dart" - "lib/features/devices/data/datasources/device_mock_data_source.dart" + - "scripts/**" errors: invalid_annotation_target: ignore language: diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts index 3c5fe2b..bea10bc 100644 --- a/android/app/build.gradle.kts +++ b/android/app/build.gradle.kts @@ -11,12 +11,12 @@ android { ndkVersion = flutter.ndkVersion compileOptions { - sourceCompatibility = JavaVersion.VERSION_11 - targetCompatibility = JavaVersion.VERSION_11 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } kotlinOptions { - jvmTarget = JavaVersion.VERSION_11.toString() + jvmTarget = JavaVersion.VERSION_17.toString() } defaultConfig { diff --git a/devtools_options.yaml b/devtools_options.yaml new file mode 100644 index 0000000..fa0b357 --- /dev/null +++ b/devtools_options.yaml @@ -0,0 +1,3 @@ +description: This file stores settings for Dart & Flutter DevTools. +documentation: https://docs.flutter.dev/tools/devtools/extensions#configure-extension-enablement-states +extensions: diff --git a/docs/changes/phase1-upgrade.md b/docs/changes/phase1-upgrade.md index c416a1d..9c54861 100644 --- a/docs/changes/phase1-upgrade.md +++ b/docs/changes/phase1-upgrade.md @@ -124,9 +124,23 @@ flutter doctor -v - Simplified `ErrorReporter` with direct flag exposure (no setter lint). - Refactored `LoggerService` conditionals/braces and switched to `Level.trace`. - Modernised `AdaptiveRefreshManager` (named params, explicit error logging, tear-offs, `unawaited`). - -### Remaining Work -- `flutter analyze` now reports ~5k info-level hints (down from 20k+). Remaining buckets: - - Production code: device/room data layers (`device_remote_data_source.dart`, `device_detail_sections.dart`, `room_remote_data_source.dart`, etc.). - - Test suites: `test/optimization_*` and `test/performance_tests.dart` still need explicit generics so `Future.delayed` inference succeeds. -- After these are resolved, re-enable the excluded mock sources to keep them lint-clean. +- Refactored Settings provider/UI: + - Converted `SettingsNotifier` to an `AsyncNotifier`, caching `AppSettings` and eliminating synchronous `SharedPreferences` reads during screen build. + - Updated Settings UI/Connection dialog to consume `AsyncValue`, show loading states, and disable interactions while updates persist. +- Continued analyzer cleanup: + - Normalized device constants/helpers (`DeviceFieldSets`, `repository_providers.dart`) to resolve control-body/directive warnings. + - Refined `DeviceRemoteDataSource` and device providers to use typed booleans, `on Exception` handlers, and const params; cut dozens of lint hits around status checks and async retries. + +### Lint & Test Status (Phase 1 Closure) +- `flutter analyze` now passes cleanly across `lib/` and `test/` (diagnostic scripts are excluded via `analysis_options.yaml` because they function as archived reference material). +- Test suite status: + - Unit/domain tests: βœ… pass after updating legacy expectations (`GetDevices`, `GetRooms`, settings use cases). + - Integration tests: ⚠️ `test/integration/app_integration_test.dart` still times out (requires live staging services). Documented as a Phase 2 follow-up so CI remains predictable. +- When Phase 2 kicks off, revisit whether the archived diagnostic scripts should be modernised or moved under `docs/` so analyzer coverage can be re-enabled without noise. + +### Phase 1 Summary & Handoff +- Flutter/Dart toolchain confirmed on 3.35.5/3.9.2 with no doctor issues. +- Dependencies harmonised and all primary build targets (`apk`, `ios --simulator`, `macos`) verified. +- Logging, settings, and adaptive-refresh subsystems refactored for cleaner async handling and consolidated configuration; new documentation and automation scripts published. +- Analyzer debt eliminated across production and test code; legacy diagnostics carved out explicitly while we decide their long-term fate. +- Unit and domain tests are green; the only remaining red tests are the historical integration flows that expect live staging infrastructureβ€”kept on the backlog for Phase 2. diff --git a/lib/core/constants/device_field_sets.dart b/lib/core/constants/device_field_sets.dart index 83c67ad..34b878b 100644 --- a/lib/core/constants/device_field_sets.dart +++ b/lib/core/constants/device_field_sets.dart @@ -1,39 +1,39 @@ /// Device field sets for hierarchical data loading -/// +/// /// Defines field sets for different views to optimize API calls. /// This reduces data transfer by 97% for list views. class DeviceFieldSets { // Private constructor to prevent instantiation DeviceFieldSets._(); - + /// Version for field set evolution static const String version = '2.0.0'; - + /// Minimal fields for list views (33KB instead of 1.5MB) /// Reduces load time from 17.7s to ~350ms static const List listFields = [ 'id', - 'name', + 'name', 'type', 'status', - 'ip', // Access points use 'ip' - 'host', // Switches/WLAN use 'host' - 'mac', // Access points/ONTs use 'mac' - 'scratch', // Switches store MAC in 'scratch' - 'pms_room', // Full nested object + 'ip', // Access points use 'ip' + 'host', // Switches/WLAN use 'host' + 'mac', // Access points/ONTs use 'mac' + 'scratch', // Switches store MAC in 'scratch' + 'pms_room', // Full nested object 'location', 'last_seen', 'signal_strength', 'connected_clients', - 'online', // For notifications - 'note', // For notifications - 'images', // For notifications + 'online', // For notifications + 'note', // For notifications + 'images', // For notifications ]; - + /// All fields for detail view /// Empty list means fetch all available fields static const List detailFields = []; - + /// Minimal fields for background refresh /// Only status-related fields to minimize data transfer static const List refreshFields = [ @@ -43,17 +43,21 @@ class DeviceFieldSets { 'last_seen', 'signal_strength', ]; - + /// Build API query parameter for field selection static String buildFieldsParam(List? fields) { - if (fields == null || fields.isEmpty) return ''; + if (fields == null || fields.isEmpty) { + return ''; + } return '&only=${fields.join(',')}'; } - + /// Generate cache key including field selection static String getCacheKey(String base, List? fields) { - if (fields == null || fields.isEmpty) return '$base:all'; + if (fields == null || fields.isEmpty) { + return '$base:all'; + } final sortedFields = List.from(fields)..sort(); return '$base:${sortedFields.join(',')}'; } -} \ No newline at end of file +} diff --git a/lib/core/providers/repository_providers.dart b/lib/core/providers/repository_providers.dart index b704580..100b3dc 100644 --- a/lib/core/providers/repository_providers.dart +++ b/lib/core/providers/repository_providers.dart @@ -1,19 +1,22 @@ import 'package:flutter_riverpod/flutter_riverpod.dart'; +import 'package:rgnets_fdk/core/config/environment.dart'; import 'package:rgnets_fdk/core/providers/core_providers.dart'; import 'package:rgnets_fdk/core/services/background_refresh_service.dart'; import 'package:rgnets_fdk/features/auth/data/datasources/auth_local_data_source.dart'; import 'package:rgnets_fdk/features/auth/data/datasources/auth_remote_data_source.dart'; -import 'package:rgnets_fdk/features/auth/data/repositories/auth_repository.dart' as auth_impl; +import 'package:rgnets_fdk/features/auth/data/repositories/auth_repository.dart' + as auth_impl; import 'package:rgnets_fdk/features/auth/domain/repositories/auth_repository.dart'; -import 'package:rgnets_fdk/core/config/environment.dart'; import 'package:rgnets_fdk/features/devices/data/datasources/device_data_source.dart'; import 'package:rgnets_fdk/features/devices/data/datasources/device_local_data_source.dart'; import 'package:rgnets_fdk/features/devices/data/datasources/device_mock_data_source.dart'; import 'package:rgnets_fdk/features/devices/data/datasources/device_remote_data_source.dart'; -import 'package:rgnets_fdk/features/devices/data/repositories/device_repository.dart' as device_impl; +import 'package:rgnets_fdk/features/devices/data/repositories/device_repository.dart' + as device_impl; import 'package:rgnets_fdk/features/devices/domain/repositories/device_repository.dart'; -import 'package:rgnets_fdk/features/notifications/data/repositories/notification_repository_impl.dart' as notification_impl; +import 'package:rgnets_fdk/features/notifications/data/repositories/notification_repository_impl.dart' + as notification_impl; import 'package:rgnets_fdk/features/notifications/domain/repositories/notification_repository.dart'; import 'package:rgnets_fdk/features/rooms/data/datasources/room_local_data_source.dart'; import 'package:rgnets_fdk/features/rooms/data/datasources/room_mock_data_source.dart'; @@ -53,15 +56,11 @@ final deviceDataSourceProvider = Provider((ref) { if (EnvironmentConfig.isDevelopment) { // Use mock data source in development final mockDataService = ref.watch(mockDataServiceProvider); - return DeviceMockDataSourceImpl( - mockDataService: mockDataService, - ); + return DeviceMockDataSourceImpl(mockDataService: mockDataService); } else { // Use remote data source in staging/production final apiService = ref.watch(apiServiceProvider); - return DeviceRemoteDataSourceImpl( - apiService: apiService, - ); + return DeviceRemoteDataSourceImpl(apiService: apiService); } }); @@ -97,7 +96,7 @@ final authRepositoryProvider = Provider((ref) { final remoteDataSource = ref.watch(authRemoteDataSourceProvider); final localDataSource = ref.watch(authLocalDataSourceProvider); final mockDataService = ref.watch(mockDataServiceProvider); - + return auth_impl.AuthRepositoryImpl( remoteDataSource: remoteDataSource, localDataSource: localDataSource, @@ -109,7 +108,7 @@ final authRepositoryProvider = Provider((ref) { final deviceRepositoryProvider = Provider((ref) { final dataSource = ref.watch(deviceDataSourceProvider); final localDataSource = ref.watch(deviceLocalDataSourceProvider); - + return device_impl.DeviceRepositoryImpl( dataSource: dataSource, localDataSource: localDataSource, @@ -121,7 +120,7 @@ final roomRepositoryProvider = Provider((ref) { final remoteDataSource = ref.watch(roomRemoteDataSourceProvider); final mockDataSource = ref.watch(roomMockDataSourceProvider); final localDataSource = ref.watch(roomLocalDataSourceProvider); - + return RoomRepositoryImpl( remoteDataSource: remoteDataSource, mockDataSource: mockDataSource, @@ -133,7 +132,7 @@ final roomRepositoryProvider = Provider((ref) { final notificationRepositoryProvider = Provider((ref) { final notificationService = ref.watch(notificationGenerationServiceProvider); final deviceRepository = ref.watch(deviceRepositoryProvider); - + return notification_impl.NotificationRepositoryImpl( notificationGenerationService: notificationService, deviceRepository: deviceRepository, @@ -149,7 +148,7 @@ final scannerLocalDataSourceProvider = Provider((ref) { final scannerRepositoryProvider = Provider((ref) { final localDataSource = ref.watch(scannerLocalDataSourceProvider); final deviceRepository = ref.watch(deviceRepositoryProvider); - + return ScannerRepositoryImpl( localDataSource: localDataSource, deviceRepository: deviceRepository, @@ -166,18 +165,19 @@ final settingsRepositoryProvider = Provider((ref) { // Services that depend on repositories // ============================================================================ - /// Background refresh service provider -final backgroundRefreshServiceProvider = Provider((ref) { +final backgroundRefreshServiceProvider = Provider(( + ref, +) { final deviceRemoteDataSource = ref.watch(deviceRemoteDataSourceProvider); final deviceLocalDataSource = ref.watch(deviceLocalDataSourceProvider); final roomRepository = ref.watch(roomRepositoryProvider); final notificationService = ref.watch(notificationGenerationServiceProvider); - + return BackgroundRefreshService( deviceRemoteDataSource: deviceRemoteDataSource, deviceLocalDataSource: deviceLocalDataSource, roomRepository: roomRepository, notificationGenerationService: notificationService, ); -}); \ No newline at end of file +}); diff --git a/lib/core/widgets/connection_details_dialog.dart b/lib/core/widgets/connection_details_dialog.dart index d9a33f1..ba2a1be 100644 --- a/lib/core/widgets/connection_details_dialog.dart +++ b/lib/core/widgets/connection_details_dialog.dart @@ -12,18 +12,23 @@ class ConnectionDetailsDialog extends ConsumerStatefulWidget { const ConnectionDetailsDialog({super.key}); static Future show(BuildContext context) { - return showDialog(context: context, builder: (context) => const ConnectionDetailsDialog()); + return showDialog( + context: context, + builder: (context) => const ConnectionDetailsDialog(), + ); } @override - ConsumerState createState() => _ConnectionDetailsDialogState(); + ConsumerState createState() => + _ConnectionDetailsDialogState(); } -class _ConnectionDetailsDialogState extends ConsumerState { +class _ConnectionDetailsDialogState + extends ConsumerState { Timer? _timer; DateTime _lastSyncTime = DateTime.now().subtract(const Duration(minutes: 1)); final int _responseTimeMs = 42; // Mock response time - + @override void initState() { super.initState(); @@ -34,39 +39,44 @@ class _ConnectionDetailsDialogState extends ConsumerState 0) { return '${minutes}m ${seconds}s'; } else { return '${seconds}s'; } } - + String _getLastSyncTime() { final hour = _lastSyncTime.hour; final minute = _lastSyncTime.minute.toString().padLeft(2, '0'); @@ -84,6 +94,8 @@ class _ConnectionDetailsDialogState extends ConsumerState const AuthStatus.authenticating(), error: (_, __) => const AuthStatus.unauthenticated(), ); + final settingsAsync = ref.watch(settingsNotifierProvider); + final settings = settingsAsync.value; return AlertDialog( backgroundColor: Colors.black87, @@ -113,57 +125,81 @@ class _ConnectionDetailsDialogState extends ConsumerState 'Connected', orElse: () => 'Disconnected'), - auth.maybeWhen(authenticated: (_) => Colors.green, orElse: () => Colors.red), - ), - const SizedBox(height: 8), - _buildDetailRow( - 'Server', - auth.maybeWhen(authenticated: (user) => user.apiUrl, orElse: () => 'Not configured'), - null, - ), - const SizedBox(height: 8), - _buildDetailRow( - 'Username', - auth.maybeWhen(authenticated: (user) => user.username, orElse: () => 'Not configured'), - null, - ), - const SizedBox(height: 8), - _buildDetailRow('Mode', 'Read-only (Test)', null), - const SizedBox(height: 8), - _buildDetailRow( - 'Response Time', - '${_responseTimeMs}ms', - _responseTimeMs < 100 ? Colors.green : _responseTimeMs < 500 ? Colors.orange : Colors.red, - ), - const SizedBox(height: 8), - _buildDetailRow( - 'Last Sync', - _getLastSyncTime(), - null, - ), - const SizedBox(height: 8), - _buildDetailRow( - 'Next Sync', - _getNextSyncCountdown(), - Colors.blue, - ), - if (EnvironmentConfig.environment != Environment.production) ...[ + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + _buildDetailRow( + 'Status', + auth.maybeWhen( + authenticated: (_) => 'Connected', + orElse: () => 'Disconnected', + ), + auth.maybeWhen( + authenticated: (_) => Colors.green, + orElse: () => Colors.red, + ), + ), + const SizedBox(height: 8), + _buildDetailRow( + 'Server', + auth.maybeWhen( + authenticated: (user) => user.apiUrl, + orElse: () => 'Not configured', + ), + null, + ), + const SizedBox(height: 8), + _buildDetailRow( + 'Username', + auth.maybeWhen( + authenticated: (user) => user.username, + orElse: () => 'Not configured', + ), + null, + ), const SizedBox(height: 8), - _buildDetailRow('Env', EnvironmentConfig.name.toUpperCase(), - EnvironmentConfig.isDevelopment ? Colors.green : Colors.orange), + _buildDetailRow('Mode', 'Read-only (Test)', null), const SizedBox(height: 8), - _buildDetailRow('Mock Data', EnvironmentConfig.useSyntheticData ? 'Yes' : 'No', null), + _buildDetailRow( + 'Response Time', + '${_responseTimeMs}ms', + _responseTimeMs < 100 + ? Colors.green + : _responseTimeMs < 500 + ? Colors.orange + : Colors.red, + ), + const SizedBox(height: 8), + _buildDetailRow('Last Sync', _getLastSyncTime(), null), + const SizedBox(height: 8), + _buildDetailRow( + 'Next Sync', + _getNextSyncCountdown(settings), + Colors.blue, + ), + if (EnvironmentConfig.environment != Environment.production) ...[ + const SizedBox(height: 8), + _buildDetailRow( + 'Env', + EnvironmentConfig.name.toUpperCase(), + EnvironmentConfig.isDevelopment ? Colors.green : Colors.orange, + ), + const SizedBox(height: 8), + _buildDetailRow( + 'Mock Data', + EnvironmentConfig.useSyntheticData ? 'Yes' : 'No', + null, + ), + ], ], - ], ), ), - actions: [TextButton(onPressed: () => Navigator.of(context).pop(), child: const Text('Close', style: TextStyle(color: Colors.blue)))], + actions: [ + TextButton( + onPressed: () => Navigator.of(context).pop(), + child: const Text('Close', style: TextStyle(color: Colors.blue)), + ), + ], ); } @@ -173,10 +209,19 @@ class _ConnectionDetailsDialogState extends ConsumerState( '$endpoint${endpoint.contains('?') ? '&' : '?'}page_size=0$fieldsParam', ); - + if (response.data == null) { _logger.w('No data received from $endpoint'); return []; } - + // Log the response type for debugging _logger.d('Response type from $endpoint: ${response.data.runtimeType}'); - + var results = []; - + // Handle different response formats if (response.data is List) { // Direct array response (when page_size=0 might return unpaginated) @@ -82,8 +81,10 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { results = response.data as List; } else if (response.data is Map) { final data = response.data as Map; - _logger.d('Map response from $endpoint with keys: ${data.keys.toList()}'); - + _logger.d( + 'Map response from $endpoint with keys: ${data.keys.toList()}', + ); + // Try different possible keys for the results array if (data['results'] != null && data['results'] is List) { results = data['results'] as List; @@ -93,14 +94,18 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { results = data['items'] as List; } else { // If no standard key found, log available keys for debugging - _logger.w('No recognized data key found in response from $endpoint. Keys: ${data.keys}'); + _logger.w( + 'No recognized data key found in response from $endpoint. Keys: ${data.keys}', + ); return []; } } else { - _logger.e('Unexpected response type from $endpoint: ${response.data.runtimeType}'); + _logger.e( + 'Unexpected response type from $endpoint: ${response.data.runtimeType}', + ); return []; } - + // Deduplicate by ID to ensure uniqueness final uniqueResults = >{}; for (final result in results) { @@ -111,7 +116,7 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { } } } - + _logger.i('Fetched ${uniqueResults.length} unique items from $endpoint'); return uniqueResults.values.toList(); } on Exception catch (e) { @@ -122,24 +127,28 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { // Track calls to prevent duplicate fetches static int _getDevicesCallCount = 0; - + @override - Future> getDevices({ - List? fields, - }) async { + Future> getDevices({List? fields}) async { try { _getDevicesCallCount++; final callId = _getDevicesCallCount; - + _logger - ..i('πŸ“‘ DEVICE_REMOTE_DATA_SOURCE: getDevices() CALL #$callId at ${DateTime.now().toIso8601String()}') - ..i('DeviceRemoteDataSource: Getting devices with fields: ${fields?.join(',')}') + ..i( + 'πŸ“‘ DEVICE_REMOTE_DATA_SOURCE: getDevices() CALL #$callId at ${DateTime.now().toIso8601String()}', + ) + ..i( + 'DeviceRemoteDataSource: Getting devices with fields: ${fields?.join(',')}', + ) ..i('πŸ” DEBUG: Call stack trace for getDevices() - Call #$callId'); final stopwatch = Stopwatch()..start(); - + // Fetch all device types in parallel with retry logic _logger - ..d('DEVICE_REMOTE_DATA_SOURCE: Starting parallel fetch of device types with retry') + ..d( + 'DEVICE_REMOTE_DATA_SOURCE: Starting parallel fetch of device types with retry', + ) ..d('Starting parallel fetch of all device types'); final results = await Future.wait([ _fetchDeviceTypeWithRetry('access_points', fields: fields), @@ -148,92 +157,97 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { _fetchDeviceTypeWithRetry('wlan_devices', fields: fields), ]); _logger.d('DEVICE_REMOTE_DATA_SOURCE: Parallel fetch completed'); - + // Combine all results final allDevices = []; final apDevices = results[0]; final ontDevices = results[1]; final switchDevices = results[2]; final wlanDevices = results[3]; - + // Combine all results (deduplication already handled in _fetchAllPages) allDevices ..addAll(apDevices) ..addAll(ontDevices) ..addAll(switchDevices) ..addAll(wlanDevices); - + stopwatch.stop(); - _logger.i('Total ${allDevices.length} devices collected in ${stopwatch.elapsedMilliseconds}ms'); - + _logger.i( + 'Total ${allDevices.length} devices collected in ${stopwatch.elapsedMilliseconds}ms', + ); + // Count devices by type for logging final typeCounts = {}; for (final device in allDevices) { typeCounts[device.type] = (typeCounts[device.type] ?? 0) + 1; } - + _logger.d('Device counts by type:'); typeCounts.forEach((type, count) { _logger.d(' $type: $count'); }); - + return allDevices; } on Exception catch (e) { _logger.e('DeviceRemoteDataSource: Error - $e'); throw Exception('Failed to get devices: $e'); } } - + /// Fetch devices of a specific type with retry logic Future> _fetchDeviceTypeWithRetry( String type, { List? fields, int maxRetries = 3, }) async { - for (int attempt = 1; attempt <= maxRetries; attempt++) { + for (var attempt = 1; attempt <= maxRetries; attempt++) { try { _logger.d('Attempt $attempt of $maxRetries for $type'); - + // Try to fetch the device type final results = await _fetchDeviceType(type, fields: fields); - + // If we got results, return them if (results.isNotEmpty) { - _logger.i('Successfully fetched ${results.length} $type on attempt $attempt'); + _logger.i( + 'Successfully fetched ${results.length} $type on attempt $attempt', + ); return results; } - + // Empty results might indicate a transient error - retry if not last attempt if (attempt < maxRetries) { _logger.w('Got 0 $type on attempt $attempt - retrying'); await Future.delayed(Duration(seconds: attempt)); continue; } - + // Last attempt got empty results - accept it _logger.w('Got 0 $type after $maxRetries attempts - may be legitimate'); return results; - - } catch (e) { + } on Exception catch (e) { _logger.e('Attempt $attempt failed for $type: $e'); - + // If this was our last attempt, return empty list for compatibility if (attempt == maxRetries) { - _logger.e('All $maxRetries attempts failed for $type - returning empty list'); + _logger.e( + 'All $maxRetries attempts failed for $type - returning empty list', + ); return []; } - + // Calculate backoff delay (exponential: 1s, 2s, 4s) final delaySeconds = attempt; _logger.d('Waiting ${delaySeconds}s before retry ${attempt + 1}'); await Future.delayed(Duration(seconds: delaySeconds)); } } - + // Should never reach here, but return empty list for safety return []; } - + /// Fetch devices of a specific type Future> _fetchDeviceType( String type, { @@ -241,38 +255,53 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { }) async { try { _logger - ..d('DEVICE_REMOTE_DATA_SOURCE: Fetching $type with fields: ${fields?.join(',')}') + ..d( + 'DEVICE_REMOTE_DATA_SOURCE: Fetching $type with fields: ${fields?.join(',')}', + ) ..d('Fetching $type') - ..i('πŸ” _fetchDeviceType: Starting fetch for $type at ${DateTime.now().toIso8601String()}'); + ..i( + 'πŸ” _fetchDeviceType: Starting fetch for $type at ${DateTime.now().toIso8601String()}', + ); final results = await _fetchAllPages('/api/$type.json', fields: fields); _logger ..d('DEVICE_REMOTE_DATA_SOURCE: Got ${results.length} $type') ..d('Total $type fetched: ${results.length}') - ..i('πŸ” _fetchDeviceType: Completed fetch for $type - got ${results.length} items'); - + ..i( + 'πŸ” _fetchDeviceType: Completed fetch for $type - got ${results.length} items', + ); + // Special debugging for switches if (type == 'switch_devices') { - _logger.i('πŸ” SWITCH_DEVICES DEBUG: Raw API returned ${results.length} switches'); + _logger.i( + 'πŸ” SWITCH_DEVICES DEBUG: Raw API returned ${results.length} switches', + ); for (var i = 0; i < results.length; i++) { final raw = results[i]; - _logger.i(' Raw switch ${i + 1}: ID=${raw['id']}, Name=${raw['name'] ?? raw['nickname']}'); + _logger.i( + ' Raw switch ${i + 1}: ID=${raw['id']}, Name=${raw['name'] ?? raw['nickname']}', + ); } } - + // Debug for WLAN devices if (type == 'wlan_devices') { - _logger.i('πŸ” WLAN_DEVICES DEBUG: Raw API returned ${results.length} WLAN devices'); + _logger.i( + 'πŸ” WLAN_DEVICES DEBUG: Raw API returned ${results.length} WLAN devices', + ); for (var i = 0; i < results.length; i++) { final raw = results[i]; - _logger.i(' Raw WLAN ${i + 1}: ID=${raw['id']}, Name=${raw['name']}, Device=${raw['device']}'); + _logger.i( + ' Raw WLAN ${i + 1}: ID=${raw['id']}, Name=${raw['name']}, Device=${raw['device']}', + ); } } - + return results.map((deviceMap) { switch (type) { case 'access_points': return DeviceModel.fromJson({ - 'id': 'ap_${deviceMap['id']?.toString() ?? ''}', // Prefixed to avoid ID collisions + 'id': + 'ap_${deviceMap['id']?.toString() ?? ''}', // Prefixed to avoid ID collisions 'name': deviceMap['name'] ?? 'AP-${deviceMap['id']}', 'type': 'access_point', 'status': _determineStatus(deviceMap), @@ -285,10 +314,11 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { 'last_seen': deviceMap['last_seen'] ?? deviceMap['updated_at'], 'metadata': deviceMap, }); - + case 'media_converters': return DeviceModel.fromJson({ - 'id': 'ont_${deviceMap['id']?.toString() ?? ''}', // Prefixed to avoid ID collisions + 'id': + 'ont_${deviceMap['id']?.toString() ?? ''}', // Prefixed to avoid ID collisions 'name': deviceMap['name'] ?? 'ONT-${deviceMap['id']}', 'type': 'ont', 'status': _determineStatus(deviceMap), @@ -301,38 +331,50 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { 'last_seen': deviceMap['last_seen'] ?? deviceMap['updated_at'], 'metadata': deviceMap, }); - + case 'switch_devices': return DeviceModel.fromJson({ - 'id': 'sw_${deviceMap['id']?.toString() ?? ''}', // Prefixed to avoid ID collisions - 'name': deviceMap['name'] ?? deviceMap['nickname'] ?? 'Switch-${deviceMap['id']}', + 'id': + 'sw_${deviceMap['id']?.toString() ?? ''}', // Prefixed to avoid ID collisions + 'name': + deviceMap['name'] ?? + deviceMap['nickname'] ?? + 'Switch-${deviceMap['id']}', 'type': 'switch', - 'status': deviceMap['online'] == true ? 'online' : 'offline', + 'status': _determineStatus(deviceMap), 'pms_room_id': _extractPmsRoomId(deviceMap), - 'mac_address': deviceMap['scratch'] ?? '', // MAC stored in scratch field for switches + 'mac_address': + deviceMap['scratch'] ?? + '', // MAC stored in scratch field for switches 'ip_address': deviceMap['host'] ?? deviceMap['loopback_ip'] ?? '', 'model': deviceMap['model'] ?? deviceMap['device'] ?? '', 'serial_number': deviceMap['serial_number'] ?? '', 'location': _extractLocation(deviceMap), - 'last_seen': deviceMap['last_config_sync_at'] ?? deviceMap['updated_at'], + 'last_seen': + deviceMap['last_config_sync_at'] ?? deviceMap['updated_at'], 'metadata': deviceMap, }); - + case 'wlan_devices': return DeviceModel.fromJson({ - 'id': 'wlan_${deviceMap['id']?.toString() ?? ''}', // Prefixed to avoid ID collisions + 'id': + 'wlan_${deviceMap['id']?.toString() ?? ''}', // Prefixed to avoid ID collisions 'name': deviceMap['name'] ?? 'WLAN-${deviceMap['id']}', 'type': 'wlan_controller', - 'status': deviceMap['online'] == true ? 'online' : 'offline', + 'status': _determineStatus(deviceMap), 'mac_address': deviceMap['mac'] ?? deviceMap['mac_address'] ?? '', - 'ip_address': deviceMap['host'] ?? deviceMap['ip'] ?? deviceMap['ip_address'] ?? '', + 'ip_address': + deviceMap['host'] ?? + deviceMap['ip'] ?? + deviceMap['ip_address'] ?? + '', 'model': deviceMap['model'] ?? deviceMap['device'] ?? '', 'serial_number': deviceMap['serial_number'] ?? '', 'location': _extractLocation(deviceMap), 'last_seen': deviceMap['updated_at'], 'metadata': deviceMap, }); - + default: return DeviceModel.fromJson(deviceMap); } @@ -345,11 +387,11 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { String _determineStatus(Map device) { // Check various fields that might indicate status - if (device['online'] == true) { - return 'online'; - } - if (device['online'] == false) { - return 'offline'; + final onlineFlag = device['online'] as bool?; + final activeFlag = device['active'] as bool?; + + if (onlineFlag != null) { + return onlineFlag ? 'online' : 'offline'; } if (device['status']?.toString().toLowerCase() == 'online') { return 'online'; @@ -357,21 +399,19 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { if (device['status']?.toString().toLowerCase() == 'offline') { return 'offline'; } - if (device['active'] == true) { - return 'online'; + if (activeFlag != null) { + return activeFlag ? 'online' : 'offline'; } - if (device['active'] == false) { - return 'offline'; - } - + // Check last seen time to determine if online if (device['last_seen'] != null || device['updated_at'] != null) { try { - final lastSeenStr = (device['last_seen'] ?? device['updated_at']).toString(); + final lastSeenStr = (device['last_seen'] ?? device['updated_at']) + .toString(); final lastSeen = DateTime.parse(lastSeenStr); final now = DateTime.now(); final difference = now.difference(lastSeen); - + // Consider online if seen in last 5 minutes if (difference.inMinutes < 5) { return 'online'; @@ -384,34 +424,34 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { // Can't parse date } } - + return 'unknown'; } - @override - Future getDevice( - String id, { - List? fields, - }) async { + Future getDevice(String id, {List? fields}) async { try { // Try different endpoints based on what's available try { - final response = await apiService.get>('/api/devices/$id.json'); + final response = await apiService.get>( + '/api/devices/$id.json', + ); if (response.data != null) { return DeviceModel.fromJson(response.data!); } } on Exception catch (_) { // Try specific endpoints try { - final response = await apiService.get>('/api/switch_devices/$id.json'); + final response = await apiService.get>( + '/api/switch_devices/$id.json', + ); if (response.data != null) { final swMap = response.data!; return DeviceModel.fromJson({ 'id': swMap['id']?.toString() ?? '', 'name': swMap['name'] ?? 'Switch-${swMap['id']}', 'type': 'switch', - 'status': swMap['online'] == true ? 'online' : 'offline', + 'status': _determineStatus(swMap), 'macAddress': swMap['scratch'] ?? '', 'ipAddress': swMap['host'] ?? '', 'model': swMap['model'] ?? '', @@ -424,7 +464,9 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { } on Exception catch (_) { // Try access points try { - final response = await apiService.get>('/api/access_points/$id.json'); + final response = await apiService.get>( + '/api/access_points/$id.json', + ); if (response.data != null) { final apMap = response.data!; return DeviceModel.fromJson({ @@ -444,7 +486,9 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { } on Exception catch (_) { // Try media converters try { - final response = await apiService.get>('/api/media_converters/$id.json'); + final response = await apiService.get>( + '/api/media_converters/$id.json', + ); if (response.data != null) { final ontMap = response.data!; return DeviceModel.fromJson({ @@ -496,12 +540,13 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { // Get all devices and filter locally final allDevices = await getDevices(); final lowerQuery = query.toLowerCase(); - + return allDevices.where((device) { return device.name.toLowerCase().contains(lowerQuery) || - device.id.toLowerCase().contains(lowerQuery) || - (device.serialNumber?.toLowerCase().contains(lowerQuery) ?? false) || - (device.macAddress?.toLowerCase().contains(lowerQuery) ?? false); + device.id.toLowerCase().contains(lowerQuery) || + (device.serialNumber?.toLowerCase().contains(lowerQuery) ?? + false) || + (device.macAddress?.toLowerCase().contains(lowerQuery) ?? false); }).toList(); } on Exception catch (e) { throw Exception('Failed to search devices: $e'); @@ -513,9 +558,7 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { try { final response = await apiService.put>( '/api/devices/${device.id}.json', - data: { - 'device': device.toJson(), - }, + data: {'device': device.toJson()}, ); return DeviceModel.fromJson(response.data as Map); } on Exception catch (e) { @@ -540,4 +583,4 @@ class DeviceRemoteDataSourceImpl implements DeviceRemoteDataSource { throw Exception('Failed to reset device: $e'); } } -} \ No newline at end of file +} diff --git a/lib/features/devices/data/models/device_model.dart b/lib/features/devices/data/models/device_model.dart index c8e3fc3..583cce4 100644 --- a/lib/features/devices/data/models/device_model.dart +++ b/lib/features/devices/data/models/device_model.dart @@ -1,7 +1,7 @@ import 'package:freezed_annotation/freezed_annotation.dart'; -import 'package:rgnets_fdk/features/devices/domain/entities/device.dart'; import 'package:rgnets_fdk/features/devices/data/models/room_model.dart'; +import 'package:rgnets_fdk/features/devices/domain/entities/device.dart'; part 'device_model.freezed.dart'; part 'device_model.g.dart'; @@ -87,4 +87,3 @@ extension DeviceModelX on DeviceModel { ); } } - diff --git a/lib/features/devices/data/repositories/device_repository.dart b/lib/features/devices/data/repositories/device_repository.dart index 7252aa6..d233217 100644 --- a/lib/features/devices/data/repositories/device_repository.dart +++ b/lib/features/devices/data/repositories/device_repository.dart @@ -125,12 +125,9 @@ class DeviceRepositoryImpl implements DeviceRepository { return Right(devices); } on Exception catch (e) { - _logger.e('DeviceRepositoryImpl: ERROR - $e'); - - // No fallback - fail explicitly - _logger.e('DeviceRepositoryImpl: Data source failed - $e'); - - _logger.d('DeviceRepositoryImpl: Trying cache fallback'); + _logger + ..e('DeviceRepositoryImpl: Data source failed - $e') + ..d('DeviceRepositoryImpl: Trying cache fallback'); try { // Fallback to cached data ONLY in development/production final cachedModels = await localDataSource.getCachedDevices(); @@ -275,4 +272,4 @@ class DeviceRepositoryImpl implements DeviceRepository { _paginationService.dispose(); _devicesStreamController.close(); } -} \ No newline at end of file +} diff --git a/lib/features/devices/domain/entities/room.dart b/lib/features/devices/domain/entities/room.dart index 48dd63a..b580edb 100644 --- a/lib/features/devices/domain/entities/room.dart +++ b/lib/features/devices/domain/entities/room.dart @@ -19,16 +19,20 @@ class Room with _$Room { /// Extract building information from the name field /// API returns format like "(Interurban) 007" or "(North Tower) 101" String? get extractedBuilding { - if (building != null) return building; - + if (building != null) { + return building; + } + final match = RegExp(r'\(([^)]+)\)').firstMatch(name); return match?.group(1); } /// Extract room number from the name field String? get extractedNumber { - if (number != null) return number; - + if (number != null) { + return number; + } + final parts = name.split(')'); if (parts.length > 1) { return parts[1].trim(); @@ -40,7 +44,7 @@ class Room with _$Room { String get displayName { final bldg = extractedBuilding; final num = extractedNumber; - + if (bldg != null && num != null) { return '$bldg Room $num'; } @@ -51,4 +55,4 @@ class Room with _$Room { String get shortName { return extractedNumber ?? name; } -} \ No newline at end of file +} diff --git a/lib/features/devices/presentation/providers/devices_provider.dart b/lib/features/devices/presentation/providers/devices_provider.dart index 4ec9603..a3e751f 100644 --- a/lib/features/devices/presentation/providers/devices_provider.dart +++ b/lib/features/devices/presentation/providers/devices_provider.dart @@ -17,40 +17,47 @@ class DevicesNotifier extends _$DevicesNotifier { static final _logger = LoggerConfig.getLogger(); late final AdaptiveRefreshManager _refreshManager; late final CacheManager _cacheManager; - + @override Future> build() async { // Initialize managers _refreshManager = ref.read(adaptiveRefreshManagerProvider); _cacheManager = ref.read(cacheManagerProvider); - + if (LoggerConfig.isVerboseLoggingEnabled) { _logger.i('DevicesProvider: Loading devices'); } - + // Start sequential background refresh _startBackgroundRefresh(); - + try { // Try to get from cache first with stale-while-revalidate // Use list fields for optimized loading - final cacheKey = DeviceFieldSets.getCacheKey('devices_list', DeviceFieldSets.listFields); + final cacheKey = DeviceFieldSets.getCacheKey( + 'devices_list', + DeviceFieldSets.listFields, + ); final devices = await _cacheManager.get>( key: cacheKey, fetcher: () async { final getDevices = ref.read(getDevicesProvider); final result = await getDevices( - GetDevicesParams(fields: DeviceFieldSets.listFields), + const GetDevicesParams(fields: DeviceFieldSets.listFields), ); - + return result.fold( (failure) { - _logger.e('DevicesProvider: Failed to load devices - ${failure.message}'); + _logger.e( + 'DevicesProvider: Failed to load devices - ${failure.message}', + ); throw Exception(failure.message); }, (devices) { if (LoggerConfig.isVerboseLoggingEnabled) { - _logger.i('DevicesProvider: Successfully loaded ${devices.length} devices with ${DeviceFieldSets.listFields.length} fields'); + _logger.i( + 'DevicesProvider: Successfully loaded ${devices.length} devices with ${DeviceFieldSets.listFields.length} fields', + ); } return devices; }, @@ -58,10 +65,14 @@ class DevicesNotifier extends _$DevicesNotifier { }, ttl: const Duration(minutes: 5), ); - + return devices ?? []; } on Exception catch (e, stack) { - _logger.e('DevicesProvider: Exception in build(): $e', error: e, stackTrace: stack); + _logger.e( + 'DevicesProvider: Exception in build(): $e', + error: e, + stackTrace: stack, + ); rethrow; } } @@ -71,21 +82,24 @@ class DevicesNotifier extends _$DevicesNotifier { if (LoggerConfig.isVerboseLoggingEnabled) { _logger.i('DevicesProvider: User-triggered refresh'); } - + // Show loading state for user-triggered refresh state = const AsyncValue.loading(); - + try { // Force refresh the cache with list fields - final cacheKey = DeviceFieldSets.getCacheKey('devices_list', DeviceFieldSets.listFields); + final cacheKey = DeviceFieldSets.getCacheKey( + 'devices_list', + DeviceFieldSets.listFields, + ); final devices = await _cacheManager.get>( key: cacheKey, fetcher: () async { final getDevices = ref.read(getDevicesProvider); final result = await getDevices( - GetDevicesParams(fields: DeviceFieldSets.listFields), + const GetDevicesParams(fields: DeviceFieldSets.listFields), ); - + return result.fold( (failure) => throw Exception(failure.message), (devices) => devices, @@ -94,45 +108,41 @@ class DevicesNotifier extends _$DevicesNotifier { ttl: const Duration(minutes: 5), forceRefresh: true, ); - + state = AsyncValue.data(devices ?? []); } on Exception catch (e, stack) { - _logger.e('DevicesProvider: User refresh failed: $e', error: e, stackTrace: stack); + _logger.e( + 'DevicesProvider: User refresh failed: $e', + error: e, + stackTrace: stack, + ); state = AsyncValue.error(e, stack); } } - + /// Silent background refresh without loading state /// Context-aware: refreshes based on what view is active Future silentRefresh({String? context}) async { if (LoggerConfig.isVerboseLoggingEnabled) { - _logger.i('DevicesProvider: Silent background refresh (context: $context)'); + _logger.i( + 'DevicesProvider: Silent background refresh (context: $context)', + ); } - + try { // Determine fields based on context - List? fields; - String cacheKey; - - // For list view or default, use refresh fields for minimal data - if (context == null || context == 'list') { - fields = DeviceFieldSets.refreshFields; - cacheKey = DeviceFieldSets.getCacheKey('devices_list', fields); - } else { - // For other contexts, use list fields - fields = DeviceFieldSets.listFields; - cacheKey = DeviceFieldSets.getCacheKey('devices_list', fields); - } - + final fields = (context == null || context == 'list') + ? DeviceFieldSets.refreshFields + : DeviceFieldSets.listFields; + final cacheKey = DeviceFieldSets.getCacheKey('devices_list', fields); + // Force refresh the cache with appropriate fields final devices = await _cacheManager.get>( key: cacheKey, fetcher: () async { final getDevices = ref.read(getDevicesProvider); - final result = await getDevices( - GetDevicesParams(fields: fields), - ); - + final result = await getDevices(GetDevicesParams(fields: fields)); + return result.fold( (failure) => throw Exception(failure.message), (devices) => devices, @@ -141,36 +151,38 @@ class DevicesNotifier extends _$DevicesNotifier { ttl: const Duration(minutes: 5), forceRefresh: true, ); - + // Update state without showing loading if (devices != null && state.hasValue) { state = AsyncValue.data(devices); } - } catch (e) { + } on Exception catch (e) { // Silent fail for background refresh _logger.w('DevicesProvider: Silent refresh failed: $e'); } } - + /// Deprecated - use userRefresh() or silentRefresh() instead Future refresh() async { return userRefresh(); } - + /// Start sequential background refresh void _startBackgroundRefresh() { - _refreshManager.startSequentialRefresh(() => silentRefresh(context: 'list')); + _refreshManager.startSequentialRefresh( + () => silentRefresh(context: 'list'), + ); } Future rebootDevice(String deviceId) async { if (LoggerConfig.isVerboseLoggingEnabled) { _logger.i('DevicesProvider: Rebooting device: $deviceId'); } - + try { final rebootDevice = ref.read(rebootDeviceProvider); final result = await rebootDevice(RebootDeviceParams(deviceId: deviceId)); - + await result.fold( (failure) { _logger.e('DevicesProvider: Reboot failed: ${failure.message}'); @@ -184,7 +196,11 @@ class DevicesNotifier extends _$DevicesNotifier { }, ); } on Exception catch (e, stack) { - _logger.e('DevicesProvider: Exception during reboot: $e', error: e, stackTrace: stack); + _logger.e( + 'DevicesProvider: Exception during reboot: $e', + error: e, + stackTrace: stack, + ); rethrow; } } @@ -202,7 +218,7 @@ class DeviceNotifier extends _$DeviceNotifier { fields: DeviceFieldSets.detailFields, // Empty = all fields ), ); - + return result.fold( (failure) => throw Exception(failure.message), (device) => device, @@ -215,10 +231,11 @@ class DeviceNotifier extends _$DeviceNotifier { final result = await getDevice( GetDeviceParams( id: deviceId, - fields: DeviceFieldSets.detailFields, // Refresh with all fields for detail view + fields: DeviceFieldSets + .detailFields, // Refresh with all fields for detail view ), ); - + state = result.fold( (failure) => AsyncValue.error(failure.message, StackTrace.current), AsyncValue.data, @@ -234,10 +251,10 @@ class DeviceSearchNotifier extends _$DeviceSearchNotifier { if (query.isEmpty) { return []; } - + final searchDevices = ref.read(searchDevicesProvider); final result = await searchDevices(SearchDevicesParams(query: query)); - + return result.fold( (failure) => throw Exception(failure.message), (devices) => devices, @@ -271,13 +288,14 @@ class DeviceFilterState extends _$DeviceFilterState { List filteredDevices(FilteredDevicesRef ref) { final devices = ref.watch(devicesNotifierProvider); final filters = ref.watch(deviceFilterStateProvider); - + return devices.when( data: (deviceList) { return deviceList.where((device) { final matchesType = filters.type == null || device.type == filters.type; - final matchesStatus = filters.status == null || device.status == filters.status; - + final matchesStatus = + filters.status == null || device.status == filters.status; + return matchesType && matchesStatus; }).toList(); }, @@ -288,21 +306,15 @@ List filteredDevices(FilteredDevicesRef ref) { // Filter state class class DeviceFilters { - const DeviceFilters({ - this.type, - this.status, - }); + const DeviceFilters({this.type, this.status}); final String? type; final String? status; - DeviceFilters copyWith({ - String? type, - String? status, - }) { + DeviceFilters copyWith({String? type, String? status}) { return DeviceFilters( type: type ?? this.type, status: status ?? this.status, ); } -} \ No newline at end of file +} diff --git a/lib/features/devices/presentation/screens/device_detail_screen.dart b/lib/features/devices/presentation/screens/device_detail_screen.dart index 797f103..327dd92 100644 --- a/lib/features/devices/presentation/screens/device_detail_screen.dart +++ b/lib/features/devices/presentation/screens/device_detail_screen.dart @@ -352,26 +352,46 @@ class _DeviceHeader extends StatelessWidget { } } -class _OverviewTab extends StatelessWidget { - +class _OverviewTab extends StatefulWidget { const _OverviewTab({required this.device}); + final Device device; - + + @override + State<_OverviewTab> createState() => _OverviewTabState(); +} + +class _OverviewTabState extends State<_OverviewTab> + with AutomaticKeepAliveClientMixin<_OverviewTab> { + @override + bool get wantKeepAlive => true; + @override Widget build(BuildContext context) { - // Use the comprehensive device detail sections widget - // that shows ALL available fields organized in sections - return DeviceDetailSections(device: device); + super.build(context); + // Comprehensive device detail sections widget showing organized fields + return DeviceDetailSections(device: widget.device); } } -class _NetworkTab extends StatelessWidget { - +class _NetworkTab extends StatefulWidget { const _NetworkTab({required this.device}); + final Device device; - + + @override + State<_NetworkTab> createState() => _NetworkTabState(); +} + +class _NetworkTabState extends State<_NetworkTab> + with AutomaticKeepAliveClientMixin<_NetworkTab> { + @override + bool get wantKeepAlive => true; + @override Widget build(BuildContext context) { + super.build(context); + final device = widget.device; return SingleChildScrollView( padding: const EdgeInsets.all(16), child: Column( @@ -429,13 +449,24 @@ class _NetworkTab extends StatelessWidget { } } -class _StatisticsTab extends StatelessWidget { - +class _StatisticsTab extends StatefulWidget { const _StatisticsTab({required this.device}); + final Device device; - + + @override + State<_StatisticsTab> createState() => _StatisticsTabState(); +} + +class _StatisticsTabState extends State<_StatisticsTab> + with AutomaticKeepAliveClientMixin<_StatisticsTab> { + @override + bool get wantKeepAlive => true; + @override Widget build(BuildContext context) { + super.build(context); + final device = widget.device; return SingleChildScrollView( padding: const EdgeInsets.all(16), child: Column( @@ -504,15 +535,26 @@ class _StatisticsTab extends StatelessWidget { } } -class _LogsTab extends StatelessWidget { - +class _LogsTab extends StatefulWidget { const _LogsTab({required this.device}); + final Device device; - + + @override + State<_LogsTab> createState() => _LogsTabState(); +} + +class _LogsTabState extends State<_LogsTab> + with AutomaticKeepAliveClientMixin<_LogsTab> { + late final List> _logs = _generateMockLogs(); + + @override + bool get wantKeepAlive => true; + @override Widget build(BuildContext context) { - final logs = _generateMockLogs(); - + super.build(context); + return Column( children: [ // Filter bar @@ -555,9 +597,9 @@ class _LogsTab extends StatelessWidget { Expanded( child: ListView.builder( padding: const EdgeInsets.only(bottom: 80), - itemCount: logs.length, + itemCount: _logs.length, itemBuilder: (context, index) { - final log = logs[index]; + final log = _logs[index]; return _LogItem(log: log); }, ), @@ -888,4 +930,4 @@ class _QuickActionButton extends StatelessWidget { ), ); } -} \ No newline at end of file +} diff --git a/lib/features/devices/presentation/widgets/device_detail_sections.dart b/lib/features/devices/presentation/widgets/device_detail_sections.dart index faa6191..bd70486 100644 --- a/lib/features/devices/presentation/widgets/device_detail_sections.dart +++ b/lib/features/devices/presentation/widgets/device_detail_sections.dart @@ -4,12 +4,9 @@ import 'package:rgnets_fdk/features/devices/domain/entities/device.dart'; /// Widget for displaying all device fields in organized sections class DeviceDetailSections extends StatelessWidget { + const DeviceDetailSections({required this.device, super.key}); + final Device device; - - const DeviceDetailSections({ - super.key, - required this.device, - }); @override Widget build(BuildContext context) { @@ -49,8 +46,11 @@ class DeviceDetailSections extends StatelessWidget { _DetailRow('ID', device.id), _DetailRow('Name', device.name), _DetailRow('Type', device.type), - _DetailRow('Status', device.status, - valueColor: _getStatusColor(device.status)), + _DetailRow( + 'Status', + device.status, + valueColor: _getStatusColor(device.status), + ), if (device.lastSeen != null) _DetailRow('Last Seen', _formatDateTime(device.lastSeen!)), ], @@ -58,8 +58,10 @@ class DeviceDetailSections extends StatelessWidget { } Widget _buildLocationSection(BuildContext context) { - if (device.pmsRoom == null && device.location == null) return const SizedBox.shrink(); - + if (device.pmsRoom == null && device.location == null) { + return const SizedBox.shrink(); + } + return _SectionCard( title: 'Location', icon: Icons.location_on_outlined, @@ -72,8 +74,7 @@ class DeviceDetailSections extends StatelessWidget { if (device.pmsRoom!.extractedNumber != null) _DetailRow('Room Number', device.pmsRoom!.extractedNumber!), ], - if (device.location != null) - _DetailRow('Location', device.location!), + if (device.location != null) _DetailRow('Location', device.location!), if (device.pmsRoomId != null) _DetailRow('PMS Room ID', device.pmsRoomId.toString()), ], @@ -89,23 +90,23 @@ class DeviceDetailSections extends StatelessWidget { _DetailRow('IP Address', device.ipAddress!), if (device.macAddress != null) _DetailRow('MAC Address', device.macAddress!), - if (device.vlan != null) - _DetailRow('VLAN', device.vlan.toString()), + if (device.vlan != null) _DetailRow('VLAN', device.vlan.toString()), ], ); } Widget _buildWirelessSection(BuildContext context) { - if (device.ssid == null && device.channel == null && device.signalStrength == null) { + if (device.ssid == null && + device.channel == null && + device.signalStrength == null) { return const SizedBox.shrink(); } - + return _SectionCard( title: 'Wireless Configuration', icon: Icons.wifi, children: [ - if (device.ssid != null) - _DetailRow('SSID', device.ssid!), + if (device.ssid != null) _DetailRow('SSID', device.ssid!), if (device.channel != null) _DetailRow('Channel', device.channel.toString()), if (device.signalStrength != null) @@ -119,11 +120,13 @@ class DeviceDetailSections extends StatelessWidget { } Widget _buildPerformanceSection(BuildContext context) { - if (device.cpuUsage == null && device.memoryUsage == null && - device.temperature == null && device.uptime == null) { + if (device.cpuUsage == null && + device.memoryUsage == null && + device.temperature == null && + device.uptime == null) { return const SizedBox.shrink(); } - + return _SectionCard( title: 'Performance', icon: Icons.speed, @@ -145,19 +148,27 @@ class DeviceDetailSections extends StatelessWidget { } Widget _buildTrafficSection(BuildContext context) { - if (device.currentUpload == null && device.currentDownload == null && - device.totalUpload == null && device.totalDownload == null) { + if (device.currentUpload == null && + device.currentDownload == null && + device.totalUpload == null && + device.totalDownload == null) { return const SizedBox.shrink(); } - + return _SectionCard( title: 'Traffic Statistics', icon: Icons.swap_vert, children: [ if (device.currentUpload != null) - _DetailRow('Current Upload', '${device.currentUpload!.toStringAsFixed(2)} Mbps'), + _DetailRow( + 'Current Upload', + '${device.currentUpload!.toStringAsFixed(2)} Mbps', + ), if (device.currentDownload != null) - _DetailRow('Current Download', '${device.currentDownload!.toStringAsFixed(2)} Mbps'), + _DetailRow( + 'Current Download', + '${device.currentDownload!.toStringAsFixed(2)} Mbps', + ), if (device.totalUpload != null) _DetailRow('Total Upload', _formatBytes(device.totalUpload!)), if (device.totalDownload != null) @@ -167,21 +178,21 @@ class DeviceDetailSections extends StatelessWidget { } Widget _buildSystemSection(BuildContext context) { - if (device.model == null && device.serialNumber == null && - device.firmware == null && device.restartCount == null) { + if (device.model == null && + device.serialNumber == null && + device.firmware == null && + device.restartCount == null) { return const SizedBox.shrink(); } - + return _SectionCard( title: 'System Information', icon: Icons.computer, children: [ - if (device.model != null) - _DetailRow('Model', device.model!), + if (device.model != null) _DetailRow('Model', device.model!), if (device.serialNumber != null) _DetailRow('Serial Number', device.serialNumber!), - if (device.firmware != null) - _DetailRow('Firmware', device.firmware!), + if (device.firmware != null) _DetailRow('Firmware', device.firmware!), if (device.restartCount != null) _DetailRow('Restart Count', device.restartCount.toString()), ], @@ -194,8 +205,10 @@ class DeviceDetailSections extends StatelessWidget { } Widget _buildNotesSection(BuildContext context) { - if (device.note == null) return const SizedBox.shrink(); - + if (device.note == null) { + return const SizedBox.shrink(); + } + return _SectionCard( title: 'Notes', icon: Icons.note, @@ -215,7 +228,7 @@ class DeviceDetailSections extends StatelessWidget { if (device.images == null || device.images!.isEmpty) { return const SizedBox.shrink(); } - + return _SectionCard( title: 'Images', icon: Icons.photo_library, @@ -233,7 +246,11 @@ class DeviceDetailSections extends StatelessWidget { child: Container( width: 120, color: Colors.grey[300], - child: const Icon(Icons.image, size: 40, color: Colors.grey), + child: const Icon( + Icons.image, + size: 40, + color: Colors.grey, + ), ), ), ); @@ -248,7 +265,7 @@ class DeviceDetailSections extends StatelessWidget { if (device.metadata == null || device.metadata!.isEmpty) { return const SizedBox.shrink(); } - + return _SectionCard( title: 'Additional Metadata', icon: Icons.data_object, @@ -265,16 +282,18 @@ class DeviceDetailSections extends StatelessWidget { return key .replaceAll('_', ' ') .split(' ') - .map((word) => word.isNotEmpty - ? '${word[0].toUpperCase()}${word.substring(1)}' - : '') + .map( + (word) => word.isNotEmpty + ? '${word[0].toUpperCase()}${word.substring(1)}' + : '', + ) .join(' '); } String _formatDateTime(DateTime dateTime) { final now = DateTime.now(); final difference = now.difference(dateTime); - + if (difference.inMinutes < 1) { return 'Just now'; } else if (difference.inHours < 1) { @@ -292,7 +311,7 @@ class DeviceDetailSections extends StatelessWidget { final days = seconds ~/ 86400; final hours = (seconds % 86400) ~/ 3600; final minutes = (seconds % 3600) ~/ 60; - + if (days > 0) { return '$days days, $hours hours'; } else if (hours > 0) { @@ -303,9 +322,15 @@ class DeviceDetailSections extends StatelessWidget { } String _formatBytes(int bytes) { - if (bytes < 1024) return '$bytes B'; - if (bytes < 1048576) return '${(bytes / 1024).toStringAsFixed(2)} KB'; - if (bytes < 1073741824) return '${(bytes / 1048576).toStringAsFixed(2)} MB'; + if (bytes < 1024) { + return '$bytes B'; + } + if (bytes < 1048576) { + return '${(bytes / 1024).toStringAsFixed(2)} KB'; + } + if (bytes < 1073741824) { + return '${(bytes / 1048576).toStringAsFixed(2)} MB'; + } return '${(bytes / 1073741824).toStringAsFixed(2)} GB'; } @@ -326,16 +351,16 @@ class DeviceDetailSections extends StatelessWidget { } class _SectionCard extends StatelessWidget { - final String title; - final IconData icon; - final List children; - const _SectionCard({ required this.title, required this.icon, required this.children, }); + final String title; + final IconData icon; + final List children; + @override Widget build(BuildContext context) { return Card( @@ -366,12 +391,12 @@ class _SectionCard extends StatelessWidget { } class _DetailRow extends StatelessWidget { + const _DetailRow(this.label, this.value, {this.valueColor}); + final String label; final String value; final Color? valueColor; - const _DetailRow(this.label, this.value, {this.valueColor}); - @override Widget build(BuildContext context) { return Padding( @@ -383,9 +408,9 @@ class _DetailRow extends StatelessWidget { flex: 2, child: Text( label, - style: Theme.of(context).textTheme.bodyMedium?.copyWith( - color: Colors.grey[600], - ), + style: Theme.of( + context, + ).textTheme.bodyMedium?.copyWith(color: Colors.grey[600]), ), ), Expanded( @@ -402,4 +427,4 @@ class _DetailRow extends StatelessWidget { ), ); } -} \ No newline at end of file +} diff --git a/lib/features/rooms/data/datasources/room_mock_data_source.dart b/lib/features/rooms/data/datasources/room_mock_data_source.dart index 6819d50..e8e547c 100644 --- a/lib/features/rooms/data/datasources/room_mock_data_source.dart +++ b/lib/features/rooms/data/datasources/room_mock_data_source.dart @@ -11,9 +11,7 @@ abstract class RoomMockDataSource { } class RoomMockDataSourceImpl implements RoomMockDataSource { - const RoomMockDataSourceImpl({ - required this.mockDataService, - }); + const RoomMockDataSourceImpl({required this.mockDataService}); final MockDataService mockDataService; static final _logger = Logger(); @@ -21,29 +19,31 @@ class RoomMockDataSourceImpl implements RoomMockDataSource { @override Future> getRooms() async { _logger.i('RoomMockDataSource: Using mock data for development'); - + // Simulate network delay await Future.delayed(const Duration(milliseconds: 600)); - + // Use JSON like production does for consistency final pmsRoomsJson = mockDataService.getMockPmsRoomsJson(); final results = pmsRoomsJson['results'] as List; - - _logger.i('RoomMockDataSource: Parsing ${results.length} mock rooms from JSON'); - + + _logger.i( + 'RoomMockDataSource: Parsing ${results.length} mock rooms from JSON', + ); + return results.map((json) { final roomData = json as Map; - + // Parse exactly like RemoteDataSource does final roomNumber = roomData['room']?.toString(); final pmsProperty = roomData['pms_property'] as Map?; final propertyName = pmsProperty?['name']?.toString(); - + // Build display name from room and property final displayName = propertyName != null && roomNumber != null ? '($propertyName) $roomNumber' : roomNumber ?? 'Room ${roomData['id']}'; - + return RoomModel( id: roomData['id']?.toString() ?? '', name: displayName, @@ -56,29 +56,32 @@ class RoomMockDataSourceImpl implements RoomMockDataSource { @override Future getRoom(String id) async { _logger.i('RoomMockDataSource: Getting mock room $id'); - + // Simulate network delay await Future.delayed(const Duration(milliseconds: 300)); - + // Use JSON like production does for consistency final pmsRoomsJson = mockDataService.getMockPmsRoomsJson(); - final results = pmsRoomsJson['results'] as List; - + final results = (pmsRoomsJson['results'] as List) + .cast>(); + final roomData = results.firstWhere( - (r) => r['id'].toString() == id, + (room) => room['id'].toString() == id, orElse: () => throw Exception('Room with ID "$id" not found'), - ) as Map; - + ); + // Parse exactly like RemoteDataSource does final roomNumber = roomData['room']?.toString(); - final pmsProperty = roomData['pms_property'] as Map?; - final propertyName = pmsProperty?['name']?.toString(); - + final pmsProperty = roomData['pms_property']; + final propertyName = pmsProperty is Map + ? pmsProperty['name']?.toString() + : null; + // Build display name from room and property final displayName = propertyName != null && roomNumber != null ? '($propertyName) $roomNumber' : roomNumber ?? 'Room ${roomData['id']}'; - + return RoomModel( id: roomData['id']?.toString() ?? '', name: displayName, @@ -90,14 +93,16 @@ class RoomMockDataSourceImpl implements RoomMockDataSource { @override Future createRoom(RoomModel room) async { _logger.i('RoomMockDataSource: Mock creating room ${room.name}'); - + // Simulate network delay await Future.delayed(const Duration(milliseconds: 400)); - + // In a real mock implementation, you might add it to an in-memory store // For now, just return the room with a generated ID if needed final updatedRoom = RoomModel( - id: room.id.isNotEmpty ? room.id : 'mock_${DateTime.now().millisecondsSinceEpoch}', + id: room.id.isNotEmpty + ? room.id + : 'mock_${DateTime.now().millisecondsSinceEpoch}', name: room.name, deviceIds: room.deviceIds, metadata: { @@ -106,17 +111,17 @@ class RoomMockDataSourceImpl implements RoomMockDataSource { 'updatedAt': DateTime.now().toIso8601String(), }, ); - + return updatedRoom; } @override Future updateRoom(RoomModel room) async { _logger.i('RoomMockDataSource: Mock updating room ${room.id}'); - + // Simulate network delay await Future.delayed(const Duration(milliseconds: 350)); - + // Return the room with updated metadata return RoomModel( id: room.id, @@ -132,10 +137,10 @@ class RoomMockDataSourceImpl implements RoomMockDataSource { @override Future deleteRoom(String id) async { _logger.i('RoomMockDataSource: Mock deleting room $id'); - + // Simulate network delay await Future.delayed(const Duration(milliseconds: 250)); - + // In a real mock implementation, you might remove it from an in-memory store // For now, just log the action _logger.i('RoomMockDataSource: Mock deletion of room $id completed'); @@ -144,9 +149,10 @@ class RoomMockDataSourceImpl implements RoomMockDataSource { /// Extract device IDs from room data List _extractDeviceIds(Map roomData) { final deviceIds = {}; - + // Extract access points - if (roomData['access_points'] != null && roomData['access_points'] is List) { + if (roomData['access_points'] != null && + roomData['access_points'] is List) { final apList = roomData['access_points'] as List; for (final ap in apList) { if (ap is Map && ap['id'] != null) { @@ -154,9 +160,10 @@ class RoomMockDataSourceImpl implements RoomMockDataSource { } } } - + // Extract media converters - if (roomData['media_converters'] != null && roomData['media_converters'] is List) { + if (roomData['media_converters'] != null && + roomData['media_converters'] is List) { final mcList = roomData['media_converters'] as List; for (final mc in mcList) { if (mc is Map && mc['id'] != null) { @@ -164,7 +171,7 @@ class RoomMockDataSourceImpl implements RoomMockDataSource { } } } - + return deviceIds.toList(); } -} \ No newline at end of file +} diff --git a/lib/features/rooms/data/datasources/room_remote_data_source.dart b/lib/features/rooms/data/datasources/room_remote_data_source.dart index 8e1c643..0fe5a04 100644 --- a/lib/features/rooms/data/datasources/room_remote_data_source.dart +++ b/lib/features/rooms/data/datasources/room_remote_data_source.dart @@ -16,9 +16,7 @@ abstract class RoomRemoteDataSource { } class RoomRemoteDataSourceImpl implements RoomRemoteDataSource { - const RoomRemoteDataSourceImpl({ - required this.apiService, - }); + const RoomRemoteDataSourceImpl({required this.apiService}); final ApiService apiService; static final _logger = Logger(); @@ -36,52 +34,35 @@ class RoomRemoteDataSourceImpl implements RoomRemoteDataSource { _logger ..i('RoomRemoteDataSource: Fetching ALL PMS rooms from API (page_size=0)') ..i('RoomRemoteDataSource: Environment is ${EnvironmentConfig.name}') - ..i('RoomRemoteDataSource: API Base URL: ${EnvironmentConfig.apiBaseUrl}'); + ..i( + 'RoomRemoteDataSource: API Base URL: ${EnvironmentConfig.apiBaseUrl}', + ); final allRooms = []; // Fetch all rooms with page_size=0 (no pagination) - _logger.d('RoomRemoteDataSource: Fetching /api/pms_rooms.json?page_size=0...'); + _logger.d( + 'RoomRemoteDataSource: Fetching /api/pms_rooms.json?page_size=0...', + ); final response = await apiService.get( '/api/pms_rooms.json?page_size=0', ); - if (response.data != null) { - // Handle both response formats - List results; - - if (response.data is List) { - // Direct list response when page_size=0 - results = response.data as List; - _logger.d('RoomRemoteDataSource: Got direct List with ${results.length} rooms'); - } else if (response.data is Map && response.data['results'] != null) { - // Map with results field (shouldn't happen with page_size=0 but handle it) - results = response.data['results'] as List; - _logger.d('RoomRemoteDataSource: Got Map with results field containing ${results.length} rooms'); - } else { - _logger.e('RoomRemoteDataSource: Unexpected response format: ${response.data.runtimeType}'); - throw Exception('Unexpected API response format'); - } - - // Process all room results + final data = response.data; + if (data != null) { + final results = _extractResults(data); for (final json in results) { final roomData = json as Map; - - // Build display name from room and property - final roomNumber = roomData['room']?.toString(); - final propertyName = roomData['pms_property']?['name']?.toString(); - - // Format as "(Building) Room" if we have both - final displayName = propertyName != null && roomNumber != null - ? '($propertyName) $roomNumber' - : roomNumber ?? 'Room ${roomData['id']}'; - - allRooms.add(RoomModel( - id: roomData['id']?.toString() ?? '', - name: displayName, - deviceIds: _extractDeviceIds(roomData), - metadata: roomData, - )); + final displayName = _buildDisplayName(roomData); + + allRooms.add( + RoomModel( + id: roomData['id']?.toString() ?? '', + name: displayName, + deviceIds: _extractDeviceIds(roomData), + metadata: roomData, + ), + ); } } @@ -90,28 +71,24 @@ class RoomRemoteDataSourceImpl implements RoomRemoteDataSource { throw Exception('No rooms available from API'); } - _logger.i('RoomRemoteDataSource: Successfully fetched ${allRooms.length} total rooms from API'); + _logger.i( + 'RoomRemoteDataSource: Successfully fetched ${allRooms.length} total rooms from API', + ); return allRooms; } @override Future getRoom(String id) async { _logger.i('RoomRemoteDataSource: Fetching room $id from API'); - - final response = await apiService.get>('/api/pms_rooms/$id.json'); + + final response = await apiService.get>( + '/api/pms_rooms/$id.json', + ); if (response.data != null) { final roomData = response.data!; - - // Build display name from room and property - final roomNumber = roomData['room']?.toString(); - final propertyName = roomData['pms_property']?['name']?.toString(); - - // Format as "(Building) Room" if we have both - final displayName = propertyName != null && roomNumber != null - ? '($propertyName) $roomNumber' - : roomNumber ?? 'Room ${roomData['id']}'; - + final displayName = _buildDisplayName(roomData); + return RoomModel( id: roomData['id']?.toString() ?? '', name: displayName, @@ -141,13 +118,50 @@ class RoomRemoteDataSourceImpl implements RoomRemoteDataSource { throw UnimplementedError('Room deletion not yet supported by API'); } + List _extractResults(dynamic data) { + if (data is List) { + _logger.d( + 'RoomRemoteDataSource: Got direct List with ${data.length} rooms', + ); + return data; + } + if (data is Map) { + final results = data['results']; + if (results is List) { + _logger.d( + 'RoomRemoteDataSource: Got Map with results field containing ${results.length} rooms', + ); + return results; + } + } + _logger.e( + 'RoomRemoteDataSource: Unexpected response format: ${data.runtimeType}', + ); + throw Exception('Unexpected API response format'); + } + + String _buildDisplayName(Map roomData) { + final roomNumber = roomData['room']?.toString(); + final pmsProperty = roomData['pms_property']; + final propertyName = pmsProperty is Map + ? pmsProperty['name']?.toString() + : null; + if (propertyName != null && roomNumber != null) { + return '($propertyName) $roomNumber'; + } + return roomNumber ?? 'Room ${roomData['id']}'; + } + /// Extract device IDs from room data following the established logic List _extractDeviceIds(Map roomData) { final deviceIds = {}; // Use Set to prevent duplicates final roomId = roomData['id']?.toString(); if (roomId == null) { - LoggerService.warning('Room ID is null, cannot extract devices', tag: 'RoomRemoteDataSource'); + LoggerService.warning( + 'Room ID is null, cannot extract devices', + tag: 'RoomRemoteDataSource', + ); return []; } @@ -157,56 +171,62 @@ class RoomRemoteDataSourceImpl implements RoomRemoteDataSource { // Track total devices in response for comparison var totalDevicesInResponse = 0; - // Extract access point IDs from the access_points array - // TRUST THE API - it returns the correct devices for each room - if (roomData['access_points'] != null && roomData['access_points'] is List) { - final apList = roomData['access_points'] as List; - totalDevicesInResponse += apList.length; - - for (final ap in apList) { - if (ap is Map && ap['id'] != null) { - // Simply add all access points returned by the API - deviceIds.add(ap['id'].toString()); - } + void addDevices(List? list, {String? prefix}) { + if (list == null) { + return; } - } + totalDevicesInResponse += list.length; - // Extract media converter (ONT) IDs from the media_converters array - // TRUST THE API - it returns the correct devices for each room - if (roomData['media_converters'] != null && roomData['media_converters'] is List) { - final mcList = roomData['media_converters'] as List; - totalDevicesInResponse += mcList.length; + for (final entry in list) { + if (entry is! Map) { + continue; + } + final id = entry['id']; + if (id != null) { + deviceIds.add(prefix != null ? '$prefix$id' : id.toString()); + } - for (final mc in mcList) { - if (mc is Map && mc['id'] != null) { - // Simply add all media converters returned by the API - deviceIds.add(mc['id'].toString()); + final nested = entry['devices']; + if (nested is List) { + totalDevicesInResponse += nested.length; + for (final device in nested) { + if (device is Map) { + final nestedId = device['id']; + if (nestedId != null) { + deviceIds.add(nestedId.toString()); + } + } + } } } } - // Note: switch_ports are ports, not switches themselves - // We should NOT include switch_ports as they are not devices - // The actual switch devices come from switch_devices endpoint + addDevices(roomData['access_points'] as List?, prefix: 'ap_'); + addDevices(roomData['media_converters'] as List?, prefix: 'ont_'); + addDevices(roomData['switch_devices'] as List?, prefix: 'sw_'); + addDevices(roomData['wlan_devices'] as List?, prefix: 'wlan_'); - // Also check infrastructure_devices if present - // TRUST THE API - it returns the correct devices for each room - if (roomData['infrastructure_devices'] != null && roomData['infrastructure_devices'] is List) { - final deviceList = roomData['infrastructure_devices'] as List; - totalDevicesInResponse += deviceList.length; + // Note: switch_ports are ports, not switches themselves. Those should not + // be added. The real switch devices come from switch_devices above. - for (final device in deviceList) { - if (device is Map && device['id'] != null) { - // Simply add all infrastructure devices returned by the API - deviceIds.add(device['id'].toString()); - } + addDevices(roomData['infrastructure_devices'] as List?); + + final routerStats = roomData['router_stats']; + if (routerStats is Map) { + final routerDevices = routerStats['devices']; + if (routerDevices is Map) { + addDevices(routerDevices['recent'] as List?); } } // Log extraction results final extractedList = deviceIds.toList(); - LoggerService.logDeviceExtraction(roomId, extractedList, totalInResponse: totalDevicesInResponse); + LoggerService.logDeviceExtraction( + roomId, + extractedList, + totalInResponse: totalDevicesInResponse, + ); return extractedList; } -} \ No newline at end of file +} diff --git a/lib/features/rooms/presentation/providers/room_device_view_model.dart b/lib/features/rooms/presentation/providers/room_device_view_model.dart index 805e4ac..a3170b8 100644 --- a/lib/features/rooms/presentation/providers/room_device_view_model.dart +++ b/lib/features/rooms/presentation/providers/room_device_view_model.dart @@ -1,15 +1,15 @@ import 'package:freezed_annotation/freezed_annotation.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; import 'package:rgnets_fdk/features/devices/domain/constants/device_types.dart'; import 'package:rgnets_fdk/features/devices/domain/entities/device.dart'; import 'package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart'; import 'package:rgnets_fdk/features/rooms/presentation/providers/room_view_models.dart'; +import 'package:riverpod_annotation/riverpod_annotation.dart'; part 'room_device_view_model.freezed.dart'; part 'room_device_view_model.g.dart'; /// Room device filtering and management view model -/// +/// /// Following MVVM architecture, this view model handles all business logic /// for device filtering, counting, and display within room context. /// Extracts complex logic from UI components to maintain separation of concerns. @@ -25,7 +25,7 @@ class RoomDeviceState with _$RoomDeviceState { } /// Device statistics for a room -@freezed +@freezed class RoomDeviceStats with _$RoomDeviceStats { const factory RoomDeviceStats({ @Default(0) int total, @@ -37,7 +37,7 @@ class RoomDeviceStats with _$RoomDeviceStats { } /// Room device view model provider -/// +/// /// Provides device filtering and statistics for a specific room. /// Follows Clean Architecture and MVVM patterns. @Riverpod(keepAlive: true) @@ -45,24 +45,24 @@ class RoomDeviceNotifier extends _$RoomDeviceNotifier { @override RoomDeviceState build(String roomId) { // Set up listeners for future updates - ref.listen(devicesNotifierProvider, (previous, next) { - next.when( - data: (devices) => _updateDevices(roomId, devices), - loading: _setLoading, - error: (error, stack) => _setError(error.toString()), - ); - }); - - // Listen to room changes to validate room still exists - ref.listen(roomViewModelByIdProvider(roomId), (previous, next) { - if (next == null) { - _setError('Room not found: $roomId'); - } - }); - + ref + ..listen(devicesNotifierProvider, (previous, next) { + next.when( + data: (devices) => _updateDevices(roomId, devices), + loading: _setLoading, + error: (error, stack) => _setError(error.toString()), + ); + }) + // Listen to room changes to validate room still exists + ..listen(roomViewModelByIdProvider(roomId), (previous, next) { + if (next == null) { + _setError('Room not found: $roomId'); + } + }); + // Process current state of devices provider final devicesState = ref.read(devicesNotifierProvider); - + // Return appropriate initial state based on current data return devicesState.when( data: (devices) { @@ -71,16 +71,17 @@ class RoomDeviceNotifier extends _$RoomDeviceNotifier { final roomIdInt = int.tryParse(roomId); if (roomIdInt == null) { return RoomDeviceState( - error: 'Invalid room ID format: "$roomId". Room IDs must be numeric.', + error: + 'Invalid room ID format: "$roomId". Room IDs must be numeric.', ); } - + // Filter devices for this room final roomDevices = _filterDevicesForRoom(devices, roomIdInt); - + // Calculate statistics final stats = _calculateDeviceStats(roomDevices); - + // Return initial state with devices return RoomDeviceState( allDevices: roomDevices, @@ -88,7 +89,7 @@ class RoomDeviceNotifier extends _$RoomDeviceNotifier { stats: stats, isLoading: false, ); - } catch (e) { + } on Object catch (e) { return RoomDeviceState( error: 'Failed to process devices for room $roomId: $e', ); @@ -98,22 +99,24 @@ class RoomDeviceNotifier extends _$RoomDeviceNotifier { error: (error, _) => RoomDeviceState(error: error.toString()), ); } - + /// Update devices when data changes void _updateDevices(String roomId, List allDevices) { try { // Validate room ID format (must be numeric) final roomIdInt = int.tryParse(roomId); if (roomIdInt == null) { - throw ArgumentError('Invalid room ID format: "$roomId". Room IDs must be numeric.'); + throw ArgumentError( + 'Invalid room ID format: "$roomId". Room IDs must be numeric.', + ); } - + // Filter devices for this room final roomDevices = _filterDevicesForRoom(allDevices, roomIdInt); - + // Calculate statistics final stats = _calculateDeviceStats(roomDevices); - + // Update state state = RoomDeviceState( allDevices: roomDevices, @@ -121,12 +124,11 @@ class RoomDeviceNotifier extends _$RoomDeviceNotifier { stats: stats, isLoading: false, ); - } on Exception catch (e) { _setError('Failed to process devices for room $roomId: $e'); } } - + /// Filter devices for a specific room List _filterDevicesForRoom(List allDevices, int roomIdInt) { try { @@ -135,14 +137,13 @@ class RoomDeviceNotifier extends _$RoomDeviceNotifier { // This is the established pattern from room_view_models.dart return device.pmsRoomId == roomIdInt; }).toList(); - } on Exception catch (e) { // Defensive programming - if filtering fails, return empty list // This prevents UI crashes from propagating throw Exception('Device filtering failed: $e'); } } - + /// Calculate device statistics with strict type validation RoomDeviceStats _calculateDeviceStats(List devices) { try { @@ -150,12 +151,12 @@ class RoomDeviceNotifier extends _$RoomDeviceNotifier { var switches = 0; var onts = 0; var wlanControllers = 0; - + for (final device in devices) { // Validate device type before counting // This will throw ArgumentError for invalid types (as requested) DeviceTypes.validateDeviceType(device.type); - + // Count by device type using constants switch (device.type) { case DeviceTypes.accessPoint: @@ -172,10 +173,12 @@ class RoomDeviceNotifier extends _$RoomDeviceNotifier { break; default: // This should never happen due to validation above - throw StateError('Unhandled device type in statistics: ${device.type}'); + throw StateError( + 'Unhandled device type in statistics: ${device.type}', + ); } } - + return RoomDeviceStats( total: devices.length, accessPoints: accessPoints, @@ -183,62 +186,54 @@ class RoomDeviceNotifier extends _$RoomDeviceNotifier { onts: onts, wlanControllers: wlanControllers, ); - } on Exception catch (e) { // Re-throw with context - this will bubble up as requested throw Exception('Device statistics calculation failed: $e'); } } - + /// Filter devices by type void filterByType(String? deviceType) { if (state.isLoading || state.error != null) { return; } - + try { List filtered; - + if (deviceType == null || deviceType.isEmpty) { // Show all devices filtered = state.allDevices; } else { // Validate the filter type DeviceTypes.validateDeviceType(deviceType); - + // Filter by type filtered = state.allDevices.where((device) { return device.type == deviceType; }).toList(); } - + state = state.copyWith(filteredDevices: filtered); - } on Exception catch (e) { _setError('Device type filtering failed: $e'); } } - + /// Set loading state void _setLoading() { - state = state.copyWith( - isLoading: true, - error: null, - ); + state = state.copyWith(isLoading: true, error: null); } - + /// Set error state void _setError(String error) { - state = state.copyWith( - isLoading: false, - error: error, - ); + state = state.copyWith(isLoading: false, error: error); } - + /// Refresh room devices Future refresh() async { _setLoading(); - + try { // Trigger device refresh through the devices provider await ref.read(devicesNotifierProvider.notifier).userRefresh(); @@ -255,7 +250,7 @@ enum DeviceTypeFilter { switches, onts, wlanControllers; - + /// Get the device type string for filtering String? get deviceType { switch (this) { @@ -271,7 +266,7 @@ enum DeviceTypeFilter { return DeviceTypes.wlanController; } } - + /// Get display name for UI String get displayName { switch (this) { @@ -287,7 +282,7 @@ enum DeviceTypeFilter { return 'WLAN Controllers'; } } - + /// Get icon identifier for UI String get iconIdentifier { switch (this) { @@ -303,4 +298,4 @@ enum DeviceTypeFilter { return DeviceTypes.getIconIdentifier(DeviceTypes.wlanController); } } -} \ No newline at end of file +} diff --git a/lib/features/settings/presentation/providers/settings_riverpod_provider.dart b/lib/features/settings/presentation/providers/settings_riverpod_provider.dart index 586257c..c9adf93 100644 --- a/lib/features/settings/presentation/providers/settings_riverpod_provider.dart +++ b/lib/features/settings/presentation/providers/settings_riverpod_provider.dart @@ -1,16 +1,10 @@ import 'package:logger/logger.dart'; +import 'package:rgnets_fdk/core/providers/repository_providers.dart'; import 'package:rgnets_fdk/features/settings/domain/entities/app_settings.dart'; -import 'package:rgnets_fdk/features/settings/domain/repositories/settings_repository.dart'; import 'package:riverpod_annotation/riverpod_annotation.dart'; part 'settings_riverpod_provider.g.dart'; -/// Repository provider (re-export from core providers) -@riverpod -SettingsRepository settingsRepository(SettingsRepositoryRef ref) { - return ref.watch(settingsRepositoryProvider); -} - /// Settings state class class SettingsState { const SettingsState({ @@ -52,115 +46,127 @@ class SettingsState { @riverpod class SettingsNotifier extends _$SettingsNotifier { final Logger _logger = Logger(); - + AppSettings? _cachedSettings; + @override - SettingsState build() { - // Load initial settings from repository - _loadSettings(); - // Return default state initially - return const SettingsState( - themeMode: 'dark', - enableNotifications: true, - autoSync: true, - syncInterval: 3, - ); - } - - Future _loadSettings() async { - final repository = ref.read(settingsRepositoryProvider); + Future build() async { + final repository = ref.watch(settingsRepositoryProvider); final result = await repository.getSettings(); - result.fold( - (failure) => _logger.e('Failed to load settings: ${failure.message}'), + + return result.fold( + (failure) { + _logger.e('Failed to load settings: ${failure.message}'); + final defaults = AppSettings.defaults(); + _cachedSettings = defaults; + return _mapSettingsToState(defaults); + }, (settings) { - state = SettingsState( - themeMode: settings.themeMode.name, - enableNotifications: settings.enableNotifications, - autoSync: settings.autoSync, - syncInterval: settings.syncIntervalMinutes, - ); + _cachedSettings = settings; + return _mapSettingsToState(settings); }, ); } Future setThemeMode(String mode) async { - final repository = ref.read(settingsRepositoryProvider); - final currentSettings = await repository.getSettings(); - currentSettings.fold( - (failure) => _logger.e('Failed to get settings: ${failure.message}'), - (settings) async { - final updatedSettings = settings.copyWith( - themeMode: _parseAppThemeMode(mode), - ); - await repository.updateSettings(updatedSettings); - state = state.copyWith(themeMode: mode); - }, + await _updateSettings( + (settings) => settings.copyWith(themeMode: _parseAppThemeMode(mode)), ); } - - AppThemeMode _parseAppThemeMode(String mode) { - switch (mode) { - case 'light': - return AppThemeMode.light; - case 'dark': - return AppThemeMode.dark; - case 'system': - default: - return AppThemeMode.system; - } - } Future toggleNotifications() async { - final repository = ref.read(settingsRepositoryProvider); - final newValue = !state.enableNotifications; - final currentSettings = await repository.getSettings(); - currentSettings.fold( - (failure) => _logger.e('Failed to get settings: ${failure.message}'), - (settings) async { - final updatedSettings = settings.copyWith( - enableNotifications: newValue, - ); - await repository.updateSettings(updatedSettings); - state = state.copyWith(enableNotifications: newValue); - }, + await _updateSettings( + (settings) => + settings.copyWith(enableNotifications: !settings.enableNotifications), ); } Future toggleAutoSync() async { - final repository = ref.read(settingsRepositoryProvider); - final newValue = !state.autoSync; - final currentSettings = await repository.getSettings(); - currentSettings.fold( - (failure) => _logger.e('Failed to get settings: ${failure.message}'), - (settings) async { - final updatedSettings = settings.copyWith( - autoSync: newValue, - ); - await repository.updateSettings(updatedSettings); - state = state.copyWith(autoSync: newValue); - }, + await _updateSettings( + (settings) => settings.copyWith(autoSync: !settings.autoSync), ); } Future setSyncInterval(int minutes) async { - final repository = ref.read(settingsRepositoryProvider); - final currentSettings = await repository.getSettings(); - currentSettings.fold( - (failure) => _logger.e('Failed to get settings: ${failure.message}'), - (settings) async { - final updatedSettings = settings.copyWith( - syncIntervalMinutes: minutes, - ); - await repository.updateSettings(updatedSettings); - state = state.copyWith(syncInterval: minutes); - }, + await _updateSettings( + (settings) => settings.copyWith(syncIntervalMinutes: minutes), ); } Future clearAllData() async { final repository = ref.read(settingsRepositoryProvider); - await repository.clearCache(); - - // Reload settings after clearing - await _loadSettings(); + state = const AsyncValue.loading(); + try { + await repository.clearCache(); + final defaults = AppSettings.defaults(); + _cachedSettings = defaults; + state = AsyncValue.data(_mapSettingsToState(defaults)); + } on Exception catch (error, stackTrace) { + _logger.e('Failed to clear cache: $error'); + state = AsyncValue.error(error, stackTrace); + } } -} \ No newline at end of file + + Future _updateSettings( + AppSettings Function(AppSettings settings) transform, + ) async { + final repository = ref.read(settingsRepositoryProvider); + final currentSettings = await _ensureSettings(); + final updatedSettings = transform(currentSettings); + state = const AsyncValue.loading(); + try { + await repository.updateSettings(updatedSettings); + _cachedSettings = updatedSettings; + state = AsyncValue.data(_mapSettingsToState(updatedSettings)); + } on Exception catch (error, stackTrace) { + _logger.e('Failed to update settings: $error'); + state = AsyncValue.error(error, stackTrace); + } + } + + Future _ensureSettings() async { + if (_cachedSettings != null) { + return _cachedSettings!; + } + + final repository = ref.read(settingsRepositoryProvider); + final result = await repository.getSettings(); + return result.fold( + (failure) { + _logger.e('Failed to get settings: ${failure.message}'); + final defaults = AppSettings.defaults(); + _cachedSettings = defaults; + return defaults; + }, + (settings) { + _cachedSettings = settings; + return settings; + }, + ); + } + + SettingsState _mapSettingsToState( + AppSettings settings, { + SettingsState? previousState, + }) { + return SettingsState( + themeMode: settings.themeMode.name, + enableNotifications: settings.enableNotifications, + autoSync: settings.autoSync, + syncInterval: settings.syncIntervalMinutes, + username: previousState?.username, + apiUrl: previousState?.apiUrl, + ); + } + + AppThemeMode _parseAppThemeMode(String mode) { + switch (mode) { + case 'light': + return AppThemeMode.light; + case 'dark': + return AppThemeMode.dark; + case 'system': + default: + return AppThemeMode.system; + } + } +} diff --git a/lib/features/settings/presentation/providers/settings_riverpod_provider.g.dart b/lib/features/settings/presentation/providers/settings_riverpod_provider.g.dart index 11029d3..b75b41d 100644 --- a/lib/features/settings/presentation/providers/settings_riverpod_provider.g.dart +++ b/lib/features/settings/presentation/providers/settings_riverpod_provider.g.dart @@ -6,33 +6,14 @@ part of 'settings_riverpod_provider.dart'; // RiverpodGenerator // ************************************************************************** -String _$settingsRepositoryHash() => - r'b95131a2ca679bc1f7144220673bb4b1c15eaa11'; - -/// Repository provider (re-export from core providers) -/// -/// Copied from [settingsRepository]. -@ProviderFor(settingsRepository) -final settingsRepositoryProvider = - AutoDisposeProvider.internal( - settingsRepository, - name: r'settingsRepositoryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$settingsRepositoryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef SettingsRepositoryRef = AutoDisposeProviderRef; -String _$settingsNotifierHash() => r'f6b5770dcf867faf663d9c6167e3553ac94c9c08'; +String _$settingsNotifierHash() => r'5f406ada7becef8ca78b8e2fc4bcf12edd3a01d7'; /// Main settings provider /// /// Copied from [SettingsNotifier]. @ProviderFor(SettingsNotifier) final settingsNotifierProvider = - AutoDisposeNotifierProvider.internal( + AutoDisposeAsyncNotifierProvider.internal( SettingsNotifier.new, name: r'settingsNotifierProvider', debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') @@ -42,6 +23,6 @@ final settingsNotifierProvider = allTransitiveDependencies: null, ); -typedef _$SettingsNotifier = AutoDisposeNotifier; +typedef _$SettingsNotifier = AutoDisposeAsyncNotifier; // ignore_for_file: type=lint // ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/features/settings/presentation/screens/settings_screen.dart b/lib/features/settings/presentation/screens/settings_screen.dart index 86ee374..6d81f07 100644 --- a/lib/features/settings/presentation/screens/settings_screen.dart +++ b/lib/features/settings/presentation/screens/settings_screen.dart @@ -19,215 +19,315 @@ class SettingsScreen extends ConsumerWidget { return Scaffold( body: Consumer( builder: (context, ref, child) { - final settings = ref.watch(settingsNotifierProvider); + final settingsAsync = ref.watch(settingsNotifierProvider); final authAsync = ref.watch(authProvider); final auth = authAsync.when( data: (status) => status, loading: () => const AuthStatus.authenticating(), error: (_, __) => const AuthStatus.unauthenticated(), ); - return ListView( - children: [ - // Connection settings - _SettingsSection( - title: 'Connection', - children: [ - ListTile( - leading: const Icon(Icons.link), - title: const Text('rXg System'), - subtitle: Text(auth.maybeWhen( - authenticated: (user) => user.apiUrl, - orElse: () => 'Not connected', - )), - trailing: Icon( - auth.maybeWhen( - authenticated: (_) => Icons.check_circle, - orElse: () => Icons.error, - ), - color: auth.maybeWhen( - authenticated: (_) => Colors.green, - orElse: () => Colors.red, - ), + + final cachedSettings = settingsAsync.value; + + return settingsAsync.when( + data: (settings) => _buildSettingsContent( + context: context, + ref: ref, + settings: settings, + authStatus: auth, + ), + loading: () { + if (cachedSettings != null) { + return _buildSettingsContent( + context: context, + ref: ref, + settings: cachedSettings, + authStatus: auth, + isLoading: true, + ); + } + return const Center(child: CircularProgressIndicator()); + }, + error: (error, stackTrace) { + return Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Icon( + Icons.error_outline, + size: 48, + color: Colors.red, ), - onTap: () { - ConnectionDetailsDialog.show(context); - }, - ), - if (auth.maybeWhen(authenticated: (_) => true, orElse: () => false)) - ListTile( - leading: const Icon(Icons.person), - title: const Text('Username'), - subtitle: Text(auth.maybeWhen( - authenticated: (user) => user.username, - orElse: () => 'Unknown', - )), - onTap: () { - ScaffoldMessenger.of(context).showSnackBar( - const SnackBar(content: Text('Username cannot be changed while connected')), - ); + const SizedBox(height: 16), + const Text('Failed to load settings'), + const SizedBox(height: 8), + ElevatedButton( + onPressed: () { + ref.invalidate(settingsNotifierProvider); }, + child: const Text('Retry'), ), - ], - ), - - // App settings - _SettingsSection( - title: 'Application', - children: [ - ListTile( - leading: const Icon(Icons.dark_mode), - title: const Text('Theme'), - subtitle: Text('Current: ${settings.themeMode}'), - trailing: const Icon(Icons.chevron_right), - onTap: () { - _showThemeDialog(context, ref); - }, - ), - SwitchListTile( - secondary: const Icon(Icons.notifications), - title: const Text('Enable Notifications'), - subtitle: const Text('Receive alerts and updates'), - value: settings.enableNotifications, - onChanged: (value) async { - await ref.read(settingsNotifierProvider.notifier).toggleNotifications(); - if (context.mounted) { - ScaffoldMessenger.of(context).showSnackBar( - SnackBar( - content: Text(value ? 'Notifications enabled' : 'Notifications disabled'), - ), - ); - } - }, - ), - SwitchListTile( - secondary: const Icon(Icons.sync), - title: const Text('Auto Sync'), - subtitle: Text('Sync every ${settings.syncInterval == 1 ? "minute" : "${settings.syncInterval} minutes"}'), - value: settings.autoSync, - onChanged: (value) async { - await ref.read(settingsNotifierProvider.notifier).toggleAutoSync(); - if (context.mounted) { - ScaffoldMessenger.of(context).showSnackBar( - SnackBar( - content: Text(value ? 'Auto sync enabled' : 'Auto sync disabled'), - ), - ); - } - }, + ], + ), + ); + }, + ); + }, + ), + ); + } + + Widget _buildSettingsContent({ + required BuildContext context, + required WidgetRef ref, + required SettingsState settings, + required AuthStatus authStatus, + bool isLoading = false, + }) { + final isAuthenticated = authStatus.maybeWhen( + authenticated: (_) => true, + orElse: () => false, + ); + + final authSubtitle = authStatus.maybeWhen( + authenticated: (user) => user.apiUrl, + orElse: () => 'Not connected', + ); + + final usernameSubtitle = authStatus.maybeWhen( + authenticated: (user) => user.username, + orElse: () => 'Unknown', + ); + + final children = []; + + if (isLoading) { + children.add(const LinearProgressIndicator(minHeight: 4)); + } + + children.addAll([ + _SettingsSection( + title: 'Connection', + children: [ + ListTile( + leading: const Icon(Icons.link), + title: const Text('rXg System'), + subtitle: Text(authSubtitle), + trailing: Icon( + isAuthenticated ? Icons.check_circle : Icons.error, + color: isAuthenticated ? Colors.green : Colors.red, + ), + onTap: () { + ConnectionDetailsDialog.show(context); + }, + ), + if (isAuthenticated) + ListTile( + leading: const Icon(Icons.person), + title: const Text('Username'), + subtitle: Text(usernameSubtitle), + onTap: () { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar( + content: Text('Username cannot be changed while connected'), ), - if (settings.autoSync) - ListTile( - leading: const Icon(Icons.timer), - title: const Text('Sync Interval'), - subtitle: Text('Every ${settings.syncInterval == 1 ? "minute" : "${settings.syncInterval} minutes"}'), - trailing: const Icon(Icons.chevron_right), - onTap: () { - _showSyncIntervalDialog(context, ref); - }, - ), - ], - ), - - // Data management - _SettingsSection( - title: 'Data Management', - children: [ - ListTile( - leading: const Icon(Icons.sync), - title: const Text('Sync Now'), - subtitle: const Text('Manually sync with server'), - onTap: () async { + ); + }, + ), + ], + ), + _SettingsSection( + title: 'Application', + children: [ + ListTile( + leading: const Icon(Icons.dark_mode), + title: const Text('Theme'), + subtitle: Text('Current: ${settings.themeMode}'), + trailing: const Icon(Icons.chevron_right), + onTap: isLoading + ? null + : () { + _showThemeDialog(context, ref); + }, + ), + SwitchListTile( + secondary: const Icon(Icons.notifications), + title: const Text('Enable Notifications'), + subtitle: const Text('Receive alerts and updates'), + value: settings.enableNotifications, + onChanged: isLoading + ? null + : (value) async { + await ref + .read(settingsNotifierProvider.notifier) + .toggleNotifications(); + if (context.mounted) { ScaffoldMessenger.of(context).showSnackBar( - const SnackBar(content: Text('Syncing data...')), + SnackBar( + content: Text( + value + ? 'Notifications enabled' + : 'Notifications disabled', + ), + ), ); - await Future.wait([ - ref.read(devicesNotifierProvider.notifier).refresh(), - ref.read(roomsNotifierProvider.notifier).refresh(), - ref.read(notificationsDomainNotifierProvider.notifier).refresh(), - ]); - if (context.mounted) { - ScaffoldMessenger.of(context).showSnackBar( - const SnackBar(content: Text('Sync complete!')), - ); - } - }, - ), - ListTile( - leading: const Icon(Icons.cleaning_services), - title: const Text('Clear Cache'), - subtitle: const Text('Remove temporary data'), - onTap: () { - _showClearCacheDialog(context, ref); - }, - ), - ListTile( - leading: const Icon(Icons.download), - title: const Text('Export Data'), - subtitle: const Text('Download your data as JSON'), - onTap: () { + } + }, + ), + SwitchListTile( + secondary: const Icon(Icons.sync), + title: const Text('Auto Sync'), + subtitle: Text( + 'Sync every ${settings.syncInterval == 1 ? "minute" : "${settings.syncInterval} minutes"}', + ), + value: settings.autoSync, + onChanged: isLoading + ? null + : (value) async { + await ref + .read(settingsNotifierProvider.notifier) + .toggleAutoSync(); + if (context.mounted) { ScaffoldMessenger.of(context).showSnackBar( - const SnackBar(content: Text('Export feature coming soon')), + SnackBar( + content: Text( + value ? 'Auto sync enabled' : 'Auto sync disabled', + ), + ), ); - }, - ), - ], + } + }, + ), + if (settings.autoSync) + ListTile( + leading: const Icon(Icons.timer), + title: const Text('Sync Interval'), + subtitle: Text( + 'Every ${settings.syncInterval == 1 ? "minute" : "${settings.syncInterval} minutes"}', ), - - // About section - _SettingsSection( - title: 'About', - children: [ - ListTile( - leading: const Icon(Icons.info), - title: const Text('Version'), - subtitle: const Text('1.0.0 (Build 1)'), - onTap: () { - _showAboutDialog(context); - }, - ), - ListTile( - leading: const Icon(Icons.help), - title: const Text('Help & Support'), - subtitle: const Text('Get help with the app'), - onTap: () { - _showHelpDialog(context); + trailing: const Icon(Icons.chevron_right), + onTap: isLoading + ? null + : () { + _showSyncIntervalDialog(context, ref); }, - ), - ListTile( - leading: const Icon(Icons.privacy_tip), - title: const Text('Privacy Policy'), - subtitle: const Text('View privacy information'), - onTap: () { + ), + ], + ), + _SettingsSection( + title: 'Data Management', + children: [ + ListTile( + leading: const Icon(Icons.sync), + title: const Text('Sync Now'), + subtitle: const Text('Manually sync with server'), + onTap: isLoading + ? null + : () async { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar(content: Text('Syncing data...')), + ); + await Future.wait([ + ref.read(devicesNotifierProvider.notifier).refresh(), + ref.read(roomsNotifierProvider.notifier).refresh(), + ref + .read(notificationsDomainNotifierProvider.notifier) + .refresh(), + ]); + if (context.mounted) { ScaffoldMessenger.of(context).showSnackBar( - const SnackBar(content: Text('Privacy policy will open in browser')), + const SnackBar(content: Text('Sync complete!')), ); - }, - ), - if (auth.maybeWhen(authenticated: (_) => true, orElse: () => false)) - ListTile( - leading: const Icon(Icons.logout, color: Colors.red), - title: const Text( - 'Sign Out', - style: TextStyle(color: Colors.red), + } + }, + ), + ListTile( + leading: const Icon(Icons.cleaning_services), + title: const Text('Clear Cache'), + subtitle: const Text('Remove temporary data'), + onTap: isLoading + ? null + : () { + _showClearCacheDialog(context, ref); + }, + ), + ListTile( + leading: const Icon(Icons.download), + title: const Text('Export Data'), + subtitle: const Text('Download your data as JSON'), + onTap: isLoading + ? null + : () { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar( + content: Text('Export feature coming soon'), ), - subtitle: const Text('Disconnect from rXg system'), - onTap: () { - _showSignOutDialog(context, ref); - }, - ), - ], + ); + }, + ), + ], + ), + _SettingsSection( + title: 'About', + children: [ + ListTile( + leading: const Icon(Icons.info), + title: const Text('Version'), + subtitle: const Text('1.0.0 (Build 1)'), + onTap: () { + _showAboutDialog(context); + }, + ), + ListTile( + leading: const Icon(Icons.help), + title: const Text('Help & Support'), + subtitle: const Text('Get help with the app'), + onTap: () { + _showHelpDialog(context); + }, + ), + ListTile( + leading: const Icon(Icons.privacy_tip), + title: const Text('Privacy Policy'), + subtitle: const Text('View privacy information'), + onTap: () { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar( + content: Text('Privacy policy will open in browser'), + ), + ); + }, + ), + if (isAuthenticated) + ListTile( + leading: const Icon(Icons.logout, color: Colors.red), + title: const Text( + 'Sign Out', + style: TextStyle(color: Colors.red), ), - const SizedBox(height: 32), - ], - ); - }, + subtitle: const Text('Disconnect from rXg system'), + onTap: isLoading + ? null + : () { + _showSignOutDialog(context, ref); + }, + ), + ], ), - ); + const SizedBox(height: 32), + ]); + + return ListView(children: children); } - - + void _showThemeDialog(BuildContext context, WidgetRef ref) { - final settings = ref.read(settingsNotifierProvider); + final settings = ref.read(settingsNotifierProvider).valueOrNull; + if (settings == null) { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar(content: Text('Settings are still loading...')), + ); + return; + } showDialog( context: context, builder: (context) => AlertDialog( @@ -235,12 +335,14 @@ class SettingsScreen extends ConsumerWidget { content: StatefulBuilder( builder: (context, setState) { var currentTheme = settings.themeMode; - + Future selectTheme(String theme, String displayName) async { setState(() { currentTheme = theme; }); - await ref.read(settingsNotifierProvider.notifier).setThemeMode(theme); + await ref + .read(settingsNotifierProvider.notifier) + .setThemeMode(theme); if (context.mounted) { Navigator.of(context).pop(); ScaffoldMessenger.of(context).showSnackBar( @@ -248,31 +350,43 @@ class SettingsScreen extends ConsumerWidget { ); } } - + return Column( mainAxisSize: MainAxisSize.min, children: [ ListTile( title: const Text('Dark'), leading: Icon( - currentTheme == 'dark' ? Icons.radio_button_checked : Icons.radio_button_unchecked, - color: currentTheme == 'dark' ? Theme.of(context).primaryColor : null, + currentTheme == 'dark' + ? Icons.radio_button_checked + : Icons.radio_button_unchecked, + color: currentTheme == 'dark' + ? Theme.of(context).primaryColor + : null, ), onTap: () => selectTheme('dark', 'Dark'), ), ListTile( title: const Text('Light'), leading: Icon( - currentTheme == 'light' ? Icons.radio_button_checked : Icons.radio_button_unchecked, - color: currentTheme == 'light' ? Theme.of(context).primaryColor : null, + currentTheme == 'light' + ? Icons.radio_button_checked + : Icons.radio_button_unchecked, + color: currentTheme == 'light' + ? Theme.of(context).primaryColor + : null, ), onTap: () => selectTheme('light', 'Light'), ), ListTile( title: const Text('System'), leading: Icon( - currentTheme == 'system' ? Icons.radio_button_checked : Icons.radio_button_unchecked, - color: currentTheme == 'system' ? Theme.of(context).primaryColor : null, + currentTheme == 'system' + ? Icons.radio_button_checked + : Icons.radio_button_unchecked, + color: currentTheme == 'system' + ? Theme.of(context).primaryColor + : null, ), onTap: () => selectTheme('system', 'System'), ), @@ -283,9 +397,15 @@ class SettingsScreen extends ConsumerWidget { ), ); } - + void _showSyncIntervalDialog(BuildContext context, WidgetRef ref) { - final settings = ref.read(settingsNotifierProvider); + final settings = ref.read(settingsNotifierProvider).valueOrNull; + if (settings == null) { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar(content: Text('Settings are still loading...')), + ); + return; + } showDialog( context: context, builder: (context) => AlertDialog( @@ -293,32 +413,40 @@ class SettingsScreen extends ConsumerWidget { content: StatefulBuilder( builder: (context, setState) { var currentInterval = settings.syncInterval; - + Future selectInterval(int minutes) async { setState(() { currentInterval = minutes; }); - await ref.read(settingsNotifierProvider.notifier).setSyncInterval(minutes); + await ref + .read(settingsNotifierProvider.notifier) + .setSyncInterval(minutes); if (context.mounted) { Navigator.of(context).pop(); - final displayText = minutes == 1 ? '1 minute' : '$minutes minutes'; + final displayText = minutes == 1 + ? '1 minute' + : '$minutes minutes'; ScaffoldMessenger.of(context).showSnackBar( SnackBar(content: Text('Sync interval set to $displayText')), ); } } - + return Column( mainAxisSize: MainAxisSize.min, children: [1, 3, 5, 10].map((minutes) { - final displayText = minutes == 1 - ? '1 minute' + final displayText = minutes == 1 + ? '1 minute' : '$minutes minutes'; return ListTile( title: Text(displayText), leading: Icon( - currentInterval == minutes ? Icons.radio_button_checked : Icons.radio_button_unchecked, - color: currentInterval == minutes ? Theme.of(context).primaryColor : null, + currentInterval == minutes + ? Icons.radio_button_checked + : Icons.radio_button_unchecked, + color: currentInterval == minutes + ? Theme.of(context).primaryColor + : null, ), onTap: () => selectInterval(minutes), ); @@ -329,13 +457,15 @@ class SettingsScreen extends ConsumerWidget { ), ); } - + void _showClearCacheDialog(BuildContext context, WidgetRef ref) { showDialog( context: context, builder: (context) => AlertDialog( title: const Text('Clear Cache'), - content: const Text('This will remove all temporary data. The app will need to reload data from the server.'), + content: const Text( + 'This will remove all temporary data. The app will need to reload data from the server.', + ), actions: [ TextButton( onPressed: () => Navigator.of(context).pop(), @@ -351,16 +481,14 @@ class SettingsScreen extends ConsumerWidget { ); } }, - style: ElevatedButton.styleFrom( - backgroundColor: Colors.red, - ), + style: ElevatedButton.styleFrom(backgroundColor: Colors.red), child: const Text('Clear'), ), ], ), ); } - + void _showAboutDialog(BuildContext context) { showDialog( context: context, @@ -375,7 +503,9 @@ class SettingsScreen extends ConsumerWidget { Text('Version: 1.0.0'), Text('Build: 1'), SizedBox(height: 16), - Text('A comprehensive tool for managing rXg network systems in the field.'), + Text( + 'A comprehensive tool for managing rXg network systems in the field.', + ), SizedBox(height: 16), Text('Β© 2024 RG Nets'), ], @@ -389,7 +519,7 @@ class SettingsScreen extends ConsumerWidget { ), ); } - + void _showHelpDialog(BuildContext context) { showDialog( context: context, @@ -421,13 +551,15 @@ class SettingsScreen extends ConsumerWidget { ), ); } - + void _showSignOutDialog(BuildContext context, WidgetRef ref) { showDialog( context: context, builder: (context) => AlertDialog( title: const Text('Sign Out'), - content: const Text('Are you sure you want to sign out? You will need to scan the QR code again to reconnect.'), + content: const Text( + 'Are you sure you want to sign out? You will need to scan the QR code again to reconnect.', + ), actions: [ TextButton( onPressed: () => Navigator.of(context).pop(), @@ -441,9 +573,7 @@ class SettingsScreen extends ConsumerWidget { context.go('/auth'); } }, - style: ElevatedButton.styleFrom( - backgroundColor: Colors.red, - ), + style: ElevatedButton.styleFrom(backgroundColor: Colors.red), child: const Text('Sign Out'), ), ], @@ -453,11 +583,7 @@ class SettingsScreen extends ConsumerWidget { } class _SettingsSection extends StatelessWidget { - - const _SettingsSection({ - required this.title, - required this.children, - }); + const _SettingsSection({required this.title, required this.children}); final String title; final List children; @@ -481,4 +607,4 @@ class _SettingsSection extends StatelessWidget { ], ); } -} \ No newline at end of file +} diff --git a/lib/main_development.dart b/lib/main_development.dart index 7adee4d..3d30d2d 100644 --- a/lib/main_development.dart +++ b/lib/main_development.dart @@ -4,8 +4,8 @@ import 'package:rgnets_fdk/core/config/environment.dart'; import 'package:rgnets_fdk/core/config/logging_config.dart'; import 'package:rgnets_fdk/core/navigation/app_router.dart'; import 'package:rgnets_fdk/core/providers/core_providers.dart'; -import 'package:rgnets_fdk/core/theme/app_theme.dart'; import 'package:rgnets_fdk/core/services/logger_service.dart'; +import 'package:rgnets_fdk/core/theme/app_theme.dart'; import 'package:shared_preferences/shared_preferences.dart'; void main() async { diff --git a/lib/main_production.dart b/lib/main_production.dart index 0779d68..b900a5c 100644 --- a/lib/main_production.dart +++ b/lib/main_production.dart @@ -1,9 +1,9 @@ import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:rgnets_fdk/core/config/environment.dart'; -import 'package:rgnets_fdk/core/services/logger_service.dart'; import 'package:rgnets_fdk/core/navigation/app_router.dart'; import 'package:rgnets_fdk/core/providers/core_providers.dart'; +import 'package:rgnets_fdk/core/services/logger_service.dart'; import 'package:rgnets_fdk/core/theme/app_theme.dart'; import 'package:shared_preferences/shared_preferences.dart'; diff --git a/scripts/analyze_building_floor_usage_iteration1.dart b/scripts/analyze_building_floor_usage_iteration1.dart index f2fc210..5836380 100644 --- a/scripts/analyze_building_floor_usage_iteration1.dart +++ b/scripts/analyze_building_floor_usage_iteration1.dart @@ -1,103 +1,120 @@ #!/usr/bin/env dart +import 'dart:io'; + +void _write([String? message]) => stdout.writeln(message ?? ''); + /// Iteration 1: Analyze if building/floor fields are actually used void main() { - print('=' * 80); - print('ITERATION 1: Building/Floor Field Usage Analysis'); - print('=' * 80); - - print('\n1. STAGING API ANALYSIS'); - print('-' * 40); - print('Based on our previous investigation:'); - print('Staging API returns:'); - print('{'); - print(' "id": 128,'); - print(' "room": "803",'); - print(' "pms_property": {"name": "Interurban"}'); - print('}'); - print(''); - print('Does NOT include:'); - print(' ❌ "building" field'); - print(' ❌ "floor" field'); - - print('\n2. VIEW/UI USAGE ANALYSIS'); - print('-' * 40); - print('From room_view_models.dart (lines 34-43):'); - print(''' + _write('=' * 80); + _write('ITERATION 1: Building/Floor Field Usage Analysis'); + _write('=' * 80); + + _write(); + _write('1. STAGING API ANALYSIS'); + _write('-' * 40); + _write('Based on our previous investigation:'); + _write('Staging API returns:'); + _write('{'); + _write(' "id": 128,'); + _write(' "room": "803",'); + _write(' "pms_property": {"name": "Interurban"}'); + _write('}'); + _write(); + _write('Does NOT include:'); + _write(' ❌ "building" field'); + _write(' ❌ "floor" field'); + + _write(); + _write('2. VIEW/UI USAGE ANALYSIS'); + _write('-' * 40); + _write('From room_view_models.dart (lines 34-43):'); + _write(r''' String get locationDisplay { final parts = []; if (building != null) { parts.add(building!); } if (floor != null) { - parts.add('Floor \$floor'); + parts.add('Floor $floor'); } return parts.join(' '); } '''); - print('The view DOES use building and floor fields!'); - print('But only for locationDisplay, which shows as extra line.'); - - print('\n3. WHERE ELSE ARE THEY USED?'); - print('-' * 40); - print('RoomViewModel exposes (lines 23-25):'); - print(' String? get building => room.building;'); - print(' String? get floor => room.floor?.toString();'); - print(''); - print('Used in:'); - print(' βœ“ locationDisplay getter (for extra line in UI)'); - print(' ? Potentially in room detail screen'); - print(' ? Potentially in other views'); - - print('\n4. ROOM ENTITY STRUCTURE'); - print('-' * 40); - print('Room entity has (room.dart):'); - print(' String? building'); - print(' int? floor'); - print(''); - print('These are optional fields in the domain entity.'); - - print('\n5. ROOMMODEL STRUCTURE'); - print('-' * 40); - print('RoomModel has (room_model.dart):'); - print(' final String? building;'); - print(' final String? floor;'); - print(''); - print('These map to Room entity fields.'); - - print('\n6. THE FUNDAMENTAL QUESTION'); - print('-' * 40); - print('If the API doesn\'t provide building/floor:'); - print(' 1. Should RoomModel have these fields? Maybe NO'); - print(' 2. Should Room entity have these fields? Maybe NO'); - print(' 3. Should the view use these fields? Currently YES (locationDisplay)'); - print(''); - print('BUT: The room name already contains "(Building) Room" format!'); - print('So building/floor fields are REDUNDANT.'); - - print('\n7. CURRENT DATA FLOW'); - print('-' * 40); - print('STAGING:'); - print(' API: No building/floor β†’ Parser: "" β†’ Entity: null β†’ View: empty locationDisplay'); - print(''); - print('DEVELOPMENT:'); - print(' Mock: No building/floor β†’ Parser: SYNTHESIZES β†’ Entity: values β†’ View: shows locationDisplay'); - - print('\n8. ARCHITECTURAL CONSIDERATION'); - print('-' * 40); - print('Clean Architecture principle:'); - print(' - Domain entities should represent business concepts'); - print(' - If building/floor are business concepts, keep them'); - print(' - If they\'re just parsing artifacts, remove them'); - print(''); - print('Given that:'); - print(' - API doesn\'t provide them'); - print(' - Name already contains the info'); - print(' - They cause UI inconsistency'); - print(''); - print('Recommendation: These fields might not belong in the domain!'); - - print('\n' + '=' * 80); - print('ITERATION 1 COMPLETE'); - print('=' * 80); -} \ No newline at end of file + _write('The view DOES use building and floor fields!'); + _write('But only for locationDisplay, which shows as extra line.'); + + _write(); + _write('3. WHERE ELSE ARE THEY USED?'); + _write('-' * 40); + _write('RoomViewModel exposes (lines 23-25):'); + _write(' String? get building => room.building;'); + _write(' String? get floor => room.floor?.toString();'); + _write(); + _write('Used in:'); + _write(' βœ“ locationDisplay getter (for extra line in UI)'); + _write(' ? Potentially in room detail screen'); + _write(' ? Potentially in other views'); + + _write(); + _write('4. ROOM ENTITY STRUCTURE'); + _write('-' * 40); + _write('Room entity has (room.dart):'); + _write(' String? building'); + _write(' int? floor'); + _write(); + _write('These are optional fields in the domain entity.'); + + _write(); + _write('5. ROOMMODEL STRUCTURE'); + _write('-' * 40); + _write('RoomModel has (room_model.dart):'); + _write(' final String? building;'); + _write(' final String? floor;'); + _write(); + _write('These map to Room entity fields.'); + + _write(); + _write('6. THE FUNDAMENTAL QUESTION'); + _write('-' * 40); + _write("If the API doesn't provide building/floor:"); + _write(' 1. Should RoomModel have these fields? Maybe NO'); + _write(' 2. Should Room entity have these fields? Maybe NO'); + _write(' 3. Should the view use these fields? Currently YES (locationDisplay)'); + _write(); + _write('BUT: The room name already contains "(Building) Room" format!'); + _write('So building/floor fields are REDUNDANT.'); + + _write(); + _write('7. CURRENT DATA FLOW'); + _write('-' * 40); + _write('STAGING:'); + _write( + ' API: No building/floor β†’ Parser: "" β†’ Entity: null β†’ View: empty locationDisplay', + ); + _write(); + _write('DEVELOPMENT:'); + _write( + ' Mock: No building/floor β†’ Parser: SYNTHESIZES β†’ Entity: values β†’ View: shows locationDisplay', + ); + + _write(); + _write('8. ARCHITECTURAL CONSIDERATION'); + _write('-' * 40); + _write('Clean Architecture principle:'); + _write(' - Domain entities should represent business concepts'); + _write(' - If building/floor are business concepts, keep them'); + _write(" - If they're just parsing artifacts, remove them"); + _write(); + _write('Given that:'); + _write(" - API doesn't provide them"); + _write(' - Name already contains the info'); + _write(' - They cause UI inconsistency'); + _write(); + _write('Recommendation: These fields might not belong in the domain!'); + + _write(); + _write('=' * 80); + _write('ITERATION 1 COMPLETE'); + _write('=' * 80); +} diff --git a/scripts/analyze_building_floor_usage_iteration2.dart b/scripts/analyze_building_floor_usage_iteration2.dart index 07a22fa..a3cf780 100644 --- a/scripts/analyze_building_floor_usage_iteration2.dart +++ b/scripts/analyze_building_floor_usage_iteration2.dart @@ -1,106 +1,122 @@ #!/usr/bin/env dart +import 'dart:io'; + +void _write([String? message]) => stdout.writeln(message ?? ''); + /// Iteration 2: Complete usage analysis and implications void main() { - print('=' * 80); - print('ITERATION 2: Complete Building/Floor Usage Analysis'); - print('=' * 80); - - print('\n1. WHERE BUILDING/FLOOR ARE USED'); - print('-' * 40); - - print('ROOMS LIST SCREEN (rooms_screen.dart):'); - print(' - Uses locationDisplay from RoomViewModel'); - print(' - Shows as extra line if not empty'); - print(' - Lines 149-155: Conditionally adds location line'); - - print('\nROOM DETAIL SCREEN (room_detail_screen.dart):'); - print(' - Line 222: Shows building/floor if not null'); - print(' - Line 224: Displays as "Building - Floor"'); - print(' - Lines 321-324: Shows in info section'); - print(' ⚠️ IMPORTANT: Detail screen DOES use these fields!'); - - print('\n2. THE DILEMMA'); - print('-' * 40); - print('If we remove building/floor fields entirely:'); - print(' βœ… Fixes list view consistency'); - print(' ❌ Breaks detail view information display'); - print(''); - print('If we keep fields but set to null/empty:'); - print(' βœ… Fixes list view consistency'); - print(' βœ… Detail view handles null gracefully'); - print(' βœ… Future-proof if API adds these fields'); - - print('\n3. API CONTRACT ANALYSIS'); - print('-' * 40); - print('Current API response:'); - print(' - Does NOT include building field'); - print(' - Does NOT include floor field'); - print(' - Includes pms_property.name (building info)'); - print(' - Includes room (room number)'); - print(''); - print('The API designers chose to:'); - print(' 1. Provide pre-formatted name in response processing'); - print(' 2. Not duplicate building/floor as separate fields'); - - print('\n4. DOMAIN MODEL PHILOSOPHY'); - print('-' * 40); - print('Clean Architecture question:'); - print(' Should domain entities reflect:'); - print(' A) What the API provides? (no building/floor)'); - print(' B) What the business needs? (maybe building/floor)'); - print(''); - print('Answer: B - Domain should represent business needs'); - print('BUT: If API never provides it, it\'s always null'); - - print('\n5. OPTIONS ANALYSIS'); - print('-' * 40); - - print('OPTION 1: Remove building/floor from domain'); - print(' Pros: Clean, matches API reality'); - print(' Cons: Major refactoring, breaks detail view'); - print(' Risk: HIGH - many files to change'); - - print('\nOPTION 2: Keep fields, always set to empty/null'); - print(' Pros: Minimal change, future-proof'); - print(' Cons: Dead fields in domain'); - print(' Risk: LOW - only data source changes'); - - print('\nOPTION 3: Parse building/floor from name'); - print(' Pros: Populates fields "correctly"'); - print(' Cons: Complex parsing, brittle'); - print(' Risk: MEDIUM - parsing complexity'); - - print('\n6. RECOMMENDATION'); - print('-' * 40); - print('GO WITH OPTION 2:'); - print(' 1. Keep building/floor in domain (already optional)'); - print(' 2. Both data sources set them to empty/null'); - print(' 3. UI already handles null correctly'); - print(' 4. Minimal change, maximum compatibility'); - - print('\n7. IMPLEMENTATION DETAILS'); - print('-' * 40); - print('RoomMockDataSource should use:'); - print(' building: roomData["building"]?.toString() ?? ""'); - print(' floor: roomData["floor"]?.toString() ?? ""'); - print(''); - print('This matches RemoteDataSource exactly.'); - print('Result: Both return empty strings β†’ become null in entity'); - - print('\n8. UI BEHAVIOR AFTER FIX'); - print('-' * 40); - print('ROOMS LIST:'); - print(' - locationDisplay returns ""'); - print(' - No extra line shown'); - print(' - 2 lines per room βœ“'); - print(''); - print('ROOM DETAIL:'); - print(' - Building/floor sections not shown (null check)'); - print(' - Clean display without redundant info'); - print(' - Name already has "(Building) Room" format'); - - print('\n' + '=' * 80); - print('ITERATION 2 COMPLETE'); - print('=' * 80); -} \ No newline at end of file + _write('=' * 80); + _write('ITERATION 2: Complete Building/Floor Usage Analysis'); + _write('=' * 80); + + _write(); + _write('1. WHERE BUILDING/FLOOR ARE USED'); + _write('-' * 40); + + _write('ROOMS LIST SCREEN (rooms_screen.dart):'); + _write(' - Uses locationDisplay from RoomViewModel'); + _write(' - Shows as extra line if not empty'); + _write(' - Lines 149-155: Conditionally adds location line'); + + _write(); + _write('ROOM DETAIL SCREEN (room_detail_screen.dart):'); + _write(' - Line 222: Shows building/floor if not null'); + _write(' - Line 224: Displays as "Building - Floor"'); + _write(' - Lines 321-324: Shows in info section'); + _write(' ⚠️ IMPORTANT: Detail screen DOES use these fields!'); + + _write(); + _write('2. THE DILEMMA'); + _write('-' * 40); + _write('If we remove building/floor fields entirely:'); + _write(' βœ… Fixes list view consistency'); + _write(' ❌ Breaks detail view information display'); + _write(); + _write('If we keep fields but set to null/empty:'); + _write(' βœ… Fixes list view consistency'); + _write(' βœ… Detail view handles null gracefully'); + _write(' βœ… Future-proof if API adds these fields'); + + _write(); + _write('3. API CONTRACT ANALYSIS'); + _write('-' * 40); + _write('Current API response:'); + _write(' - Does NOT include building field'); + _write(' - Does NOT include floor field'); + _write(' - Includes pms_property.name (building info)'); + _write(' - Includes room (room number)'); + _write(); + _write('The API designers chose to:'); + _write(' 1. Provide pre-formatted name in response processing'); + _write(' 2. Not duplicate building/floor as separate fields'); + + _write(); + _write('4. DOMAIN MODEL PHILOSOPHY'); + _write('-' * 40); + _write('Clean Architecture question:'); + _write(' Should domain entities reflect:'); + _write(' A) What the API provides? (no building/floor)'); + _write(' B) What the business needs? (maybe building/floor)'); + _write(); + _write('Answer: B - Domain should represent business needs'); + _write("BUT: If API never provides it, it's always null"); + + _write(); + _write('5. OPTIONS ANALYSIS'); + _write('-' * 40); + + _write('OPTION 1: Remove building/floor from domain'); + _write(' Pros: Clean, matches API reality'); + _write(' Cons: Major refactoring, breaks detail view'); + _write(' Risk: HIGH - many files to change'); + + _write(); + _write('OPTION 2: Keep fields, always set to empty/null'); + _write(' Pros: Minimal change, future-proof'); + _write(' Cons: Dead fields in domain'); + _write(' Risk: LOW - only data source changes'); + + _write(); + _write('OPTION 3: Parse building/floor from name'); + _write(' Pros: Populates fields "correctly"'); + _write(' Cons: Complex parsing, brittle'); + _write(' Risk: MEDIUM - parsing complexity'); + + _write(); + _write('6. RECOMMENDATION'); + _write('-' * 40); + _write('GO WITH OPTION 2:'); + _write(' 1. Keep building/floor in domain (already optional)'); + _write(' 2. Both data sources set them to empty/null'); + _write(' 3. UI already handles null correctly'); + _write(' 4. Minimal change, maximum compatibility'); + + _write(); + _write('7. IMPLEMENTATION DETAILS'); + _write('-' * 40); + _write('RoomMockDataSource should use:'); + _write(' building: roomData["building"]?.toString() ?? ""'); + _write(' floor: roomData["floor"]?.toString() ?? ""'); + _write(); + _write('This matches RemoteDataSource exactly.'); + _write('Result: Both return empty strings β†’ become null in entity'); + + _write(); + _write('8. UI BEHAVIOR AFTER FIX'); + _write('-' * 40); + _write('ROOMS LIST:'); + _write(' - locationDisplay returns ""'); + _write(' - No extra line shown'); + _write(' - 2 lines per room βœ“'); + _write(); + _write('ROOM DETAIL:'); + _write(' - Building/floor sections not shown (null check)'); + _write(' - Clean display without redundant info'); + _write(' - Name already has "(Building) Room" format'); + + _write(); + _write('=' * 80); + _write('ITERATION 2 COMPLETE'); + _write('=' * 80); +} diff --git a/scripts/analyze_building_floor_usage_iteration3.dart b/scripts/analyze_building_floor_usage_iteration3.dart index c9e4b0a..f2f7436 100644 --- a/scripts/analyze_building_floor_usage_iteration3.dart +++ b/scripts/analyze_building_floor_usage_iteration3.dart @@ -1,65 +1,75 @@ #!/usr/bin/env dart +import 'dart:io'; + +void _write([String? message]) => stdout.writeln(message ?? ''); + /// Iteration 3: Final validation and complete plan void main() { - print('=' * 80); - print('ITERATION 3: Final Validation and Complete Plan'); - print('=' * 80); - - print('\nπŸ“Š FACTS ESTABLISHED'); - print('-' * 40); - print('1. Staging API does NOT provide building/floor fields'); - print('2. Room detail screen DOES display building/floor if present'); - print('3. Fields are optional (nullable) in domain entity'); - print('4. RemoteDataSource gets empty strings (β†’ null in entity)'); - print('5. RoomMockDataSource currently synthesizes values (WRONG)'); - - print('\n🎯 DECISION: OPTION 2'); - print('-' * 40); - print('Keep building/floor fields in domain, but set to null/empty'); - print(''); - print('Rationale:'); - print(' β€’ Minimal risk - only change data source'); - print(' β€’ Future-proof - ready if API adds fields'); - print(' β€’ UI compatible - already handles null'); - print(' β€’ Clean Architecture - domain stays stable'); - - print('\nπŸ“ IMPLEMENTATION PLAN'); - print('-' * 40); - print('FILE: room_mock_data_source.dart'); - print(''); - print('CHANGE 1 - getRooms() method:'); - print(' FROM:'); - print(' building: propertyName ?? "",'); - print(' floor: _extractFloor(roomNumber),'); - print(' TO:'); - print(' building: roomData["building"]?.toString() ?? "",'); - print(' floor: roomData["floor"]?.toString() ?? "",'); - print(''); - print('CHANGE 2 - getRoom() method:'); - print(' FROM:'); - print(' building: propertyName ?? "",'); - print(' floor: _extractFloor(roomNumber),'); - print(' TO:'); - print(' building: roomData["building"]?.toString() ?? "",'); - print(' floor: roomData["floor"]?.toString() ?? "",'); - - print('\nβœ… EXPECTED RESULTS'); - print('-' * 40); - - print('ROOMS LIST VIEW:'); - print(' Before: 3 lines (Name, Location, Devices)'); - print(' After: 2 lines (Name, Devices)'); - print(' Matches staging βœ“'); - - print('\nROOM DETAIL VIEW:'); - print(' Before: Shows Building/Floor sections'); - print(' After: Sections hidden (null check fails)'); - print(' Clean display βœ“'); - - print('\nπŸ—οΈ ARCHITECTURE COMPLIANCE'); - print('-' * 40); - + _write('=' * 80); + _write('ITERATION 3: Final Validation and Complete Plan'); + _write('=' * 80); + + _write(); + _write('πŸ“Š FACTS ESTABLISHED'); + _write('-' * 40); + _write('1. Staging API does NOT provide building/floor fields'); + _write('2. Room detail screen DOES display building/floor if present'); + _write('3. Fields are optional (nullable) in domain entity'); + _write('4. RemoteDataSource gets empty strings (β†’ null in entity)'); + _write('5. RoomMockDataSource currently synthesizes values (WRONG)'); + + _write(); + _write('🎯 DECISION: OPTION 2'); + _write('-' * 40); + _write('Keep building/floor fields in domain, but set to null/empty'); + _write(); + _write('Rationale:'); + _write(' β€’ Minimal risk - only change data source'); + _write(' β€’ Future-proof - ready if API adds fields'); + _write(' β€’ UI compatible - already handles null'); + _write(' β€’ Clean Architecture - domain stays stable'); + + _write(); + _write('πŸ“ IMPLEMENTATION PLAN'); + _write('-' * 40); + _write('FILE: room_mock_data_source.dart'); + _write(); + _write('CHANGE 1 - getRooms() method:'); + _write(' FROM:'); + _write(' building: propertyName ?? "",'); + _write(' floor: _extractFloor(roomNumber),'); + _write(' TO:'); + _write(' building: roomData["building"]?.toString() ?? "",'); + _write(' floor: roomData["floor"]?.toString() ?? "",'); + _write(); + _write('CHANGE 2 - getRoom() method:'); + _write(' FROM:'); + _write(' building: propertyName ?? "",'); + _write(' floor: _extractFloor(roomNumber),'); + _write(' TO:'); + _write(' building: roomData["building"]?.toString() ?? "",'); + _write(' floor: roomData["floor"]?.toString() ?? "",'); + + _write(); + _write('βœ… EXPECTED RESULTS'); + _write('-' * 40); + + _write('ROOMS LIST VIEW:'); + _write(' Before: 3 lines (Name, Location, Devices)'); + _write(' After: 2 lines (Name, Devices)'); + _write(' Matches staging βœ“'); + + _write(); + _write('ROOM DETAIL VIEW:'); + _write(' Before: Shows Building/Floor sections'); + _write(' After: Sections hidden (null check fails)'); + _write(' Clean display βœ“'); + + _write(); + _write('πŸ—οΈ ARCHITECTURE COMPLIANCE'); + _write('-' * 40); + final checks = { 'MVVM': 'ViewModel correctly exposes nullable fields', 'Clean Architecture': 'Domain entity unchanged', @@ -70,14 +80,15 @@ void main() { 'UI Layer': 'Already handles null correctly', 'Single Responsibility': 'Each layer maintains its role', }; - + for (final entry in checks.entries) { - print('βœ“ ${entry.key}: ${entry.value}'); + _write('βœ“ ${entry.key}: ${entry.value}'); } - - print('\nπŸ§ͺ TEST VALIDATION'); - print('-' * 40); - + + _write(); + _write('πŸ§ͺ TEST VALIDATION'); + _write('-' * 40); + // Simulate the fix final mockJsonData = { 'id': 1000, @@ -85,40 +96,53 @@ void main() { 'pms_property': {'name': 'North Tower'}, // No building or floor fields }; - + // Parse with fixed logic final building = mockJsonData['building']?.toString() ?? ''; final floor = mockJsonData['floor']?.toString() ?? ''; - - print('Mock JSON parsing:'); - print(' building: "$building" β†’ ${building.isEmpty ? "null in entity" : "value in entity"}'); - print(' floor: "$floor" β†’ ${floor.isEmpty ? "null in entity" : "value in entity"}'); - print(''); - + + _write('Mock JSON parsing:'); + _write( + ' building: "$building" β†’ ' + '${building.isEmpty ? "null in entity" : "value in entity"}', + ); + _write( + ' floor: "$floor" β†’ ' + '${floor.isEmpty ? "null in entity" : "value in entity"}', + ); + _write(); + // Simulate locationDisplay final parts = []; - if (building.isNotEmpty) parts.add(building); - if (floor.isNotEmpty) parts.add('Floor $floor'); + if (building.isNotEmpty) { + parts.add(building); + } + if (floor.isNotEmpty) { + parts.add('Floor $floor'); + } final locationDisplay = parts.join(' '); - - print('Location display: "$locationDisplay" (empty: ${locationDisplay.isEmpty})'); - print('Extra line shown: ${locationDisplay.isNotEmpty ? "YES ❌" : "NO βœ“"}'); - - print('\n⚠️ IMPORTANT NOTES'); - print('-' * 40); - print('β€’ This is the MINIMAL change approach'); - print('β€’ Preserves all existing functionality'); - print('β€’ Ready for future API enhancements'); - print('β€’ No breaking changes to UI or domain'); - - print('\nπŸš€ READY FOR IMPLEMENTATION'); - print('-' * 40); - print('Changes required: 2 (both in room_mock_data_source.dart)'); - print('Files affected: 1'); - print('Risk level: LOW'); - print('Testing needed: Visual verification in dev mode'); - - print('\n' + '=' * 80); - print('PLAN COMPLETE AND VALIDATED'); - print('=' * 80); -} \ No newline at end of file + + _write('Location display: "$locationDisplay" (empty: ${locationDisplay.isEmpty})'); + _write('Extra line shown: ${locationDisplay.isNotEmpty ? "YES ❌" : "NO βœ“"}'); + + _write(); + _write('⚠️ IMPORTANT NOTES'); + _write('-' * 40); + _write('β€’ This is the MINIMAL change approach'); + _write('β€’ Preserves all existing functionality'); + _write('β€’ Ready for future API enhancements'); + _write('β€’ No breaking changes to UI or domain'); + + _write(); + _write('πŸš€ READY FOR IMPLEMENTATION'); + _write('-' * 40); + _write('Changes required: 2 (both in room_mock_data_source.dart)'); + _write('Files affected: 1'); + _write('Risk level: LOW'); + _write('Testing needed: Visual verification in dev mode'); + + _write(); + _write('=' * 80); + _write('PLAN COMPLETE AND VALIDATED'); + _write('=' * 80); +} diff --git a/scripts/analyze_room_data_architecture.dart b/scripts/analyze_room_data_architecture.dart index 753cf66..700e32b 100644 --- a/scripts/analyze_room_data_architecture.dart +++ b/scripts/analyze_room_data_architecture.dart @@ -1,109 +1,121 @@ #!/usr/bin/env dart +import 'dart:io'; + +void _write([String? message]) => stdout.writeln(message ?? ''); + /// Analyze the current Room data architecture and propose improvements void main() { - print('=' * 80); - print('ROOM DATA ARCHITECTURE ANALYSIS'); - print('=' * 80); - - print('\n1. CURRENT STATE - REAL API (Staging/Production)'); - print('-' * 40); - print('API Returns:'); - print('{'); - print(' "id": 128,'); - print(' "room": "803", // Just the room number'); - print(' "pms_property": {'); - print(' "name": "Interurban" // Building name'); - print(' }'); - print('}'); - print(''); - print('Remote Data Source:'); - print(' - Parses room + pms_property.name'); - print(' - Builds display: "(Interurban) 803"'); - print(' - Sets RoomModel.name = display string'); - - print('\n2. CURRENT STATE - MOCK (Development)'); - print('-' * 40); - print('Mock Room Entity:'); - print('{'); - print(' id: "1000",'); - print(' name: "NT-101", // Short code'); - print(' location: "(North Tower) 101", // Display format'); - print(' building: "North Tower",'); - print(' floor: 1'); - print('}'); - print(''); - print('Mock Data Source:'); - print(' - Uses Room entity directly'); - print(' - Sets RoomModel.name = room.name ("NT-101")'); - print(' - PROBLEM: Shows "NT-101" instead of "(North Tower) 101"'); - - print('\n3. THE INCONSISTENCY PROBLEM'); - print('-' * 40); - print('Real API: room="803" β†’ display="(Interurban) 803"'); - print('Mock Entity: name="NT-101", location="(North Tower) 101"'); - print(''); - print('Different field names and structures!'); - - print('\n4. PROPOSED SOLUTION - UNIFIED STRUCTURE'); - print('-' * 40); - print('Make Mock API return same JSON as Real API:'); - print('{'); - print(' "id": 1000,'); - print(' "room": "101", // Just room number'); - print(' "pms_property": {'); - print(' "name": "North Tower" // Building name'); - print(' }'); - print('}'); - print(''); - print('Benefits:'); - print(' βœ“ Same parsing logic for both environments'); - print(' βœ“ No confusion about field meanings'); - print(' βœ“ Consistent behavior everywhere'); - - print('\n5. CLEAN ARCHITECTURE LAYERS'); - print('-' * 40); - print('Domain Layer (Room entity):'); - print(' - Business representation'); - print(' - Should have: id, name (display), building, floor, etc.'); - print(''); - print('Data Layer (RoomModel):'); - print(' - Maps to/from API structure'); - print(' - Should mirror API fields closely'); - print(''); - print('Data Source:'); - print(' - Parses API response (real or mock)'); - print(' - Transforms to RoomModel'); - print(' - Should work identically for both'); - - print('\n6. KEY QUESTIONS TO CONSIDER'); - print('-' * 40); - print('Q1: Should RoomModel.name contain the display-ready string?'); - print(' Current: YES - "(Building) Room" format'); - print(' Alternative: Store raw room number, format in UI?'); - print(''); - print('Q2: Should mock data use getMockPmsRoomsJson() everywhere?'); - print(' Current: Uses getMockRooms() entities directly'); - print(' Proposed: Parse JSON like real API does'); - print(''); - print('Q3: Where should display formatting happen?'); - print(' Option A: In data source (current for real API)'); - print(' Option B: In repository'); - print(' Option C: In presentation layer'); - print(''); - print('Q4: Should Room entity have raw or formatted name?'); - print(' Current: Formatted "(Building) Room"'); - print(' Alternative: Raw room number + separate building field'); - - print('\n7. MVVM & CLEAN ARCHITECTURE COMPLIANCE'); - print('-' * 40); - print('βœ“ View: Displays what ViewModel provides'); - print('βœ“ ViewModel: Gets data from Repository via UseCase'); - print('βœ“ Repository: Converts between Model and Entity'); - print('βœ“ DataSource: Handles API/Mock consistently'); - print('βœ“ Dependency Injection: All via Riverpod'); - - print('\n' + '=' * 80); - print('ANALYSIS COMPLETE'); - print('=' * 80); -} \ No newline at end of file + _write('=' * 80); + _write('ROOM DATA ARCHITECTURE ANALYSIS'); + _write('=' * 80); + + _write(); + _write('1. CURRENT STATE - REAL API (Staging/Production)'); + _write('-' * 40); + _write('API Returns:'); + _write('{'); + _write(' "id": 128,'); + _write(' "room": "803", // Just the room number'); + _write(' "pms_property": {'); + _write(' "name": "Interurban" // Building name'); + _write(' }'); + _write('}'); + _write(); + _write('Remote Data Source:'); + _write(' - Parses room + pms_property.name'); + _write(' - Builds display: "(Interurban) 803"'); + _write(' - Sets RoomModel.name = display string'); + + _write(); + _write('2. CURRENT STATE - MOCK (Development)'); + _write('-' * 40); + _write('Mock Room Entity:'); + _write('{'); + _write(' id: "1000",'); + _write(' name: "NT-101", // Short code'); + _write(' location: "(North Tower) 101", // Display format'); + _write(' building: "North Tower",'); + _write(' floor: 1'); + _write('}'); + _write(); + _write('Mock Data Source:'); + _write(' - Uses Room entity directly'); + _write(' - Sets RoomModel.name = room.name ("NT-101")'); + _write(' - PROBLEM: Shows "NT-101" instead of "(North Tower) 101"'); + + _write(); + _write('3. THE INCONSISTENCY PROBLEM'); + _write('-' * 40); + _write('Real API: room="803" β†’ display="(Interurban) 803"'); + _write('Mock Entity: name="NT-101", location="(North Tower) 101"'); + _write(); + _write('Different field names and structures!'); + + _write(); + _write('4. PROPOSED SOLUTION - UNIFIED STRUCTURE'); + _write('-' * 40); + _write('Make Mock API return same JSON as Real API:'); + _write('{'); + _write(' "id": 1000,'); + _write(' "room": "101", // Just room number'); + _write(' "pms_property": {'); + _write(' "name": "North Tower" // Building name'); + _write(' }'); + _write('}'); + _write(); + _write('Benefits:'); + _write(' βœ“ Same parsing logic for both environments'); + _write(' βœ“ No confusion about field meanings'); + _write(' βœ“ Consistent behavior everywhere'); + + _write(); + _write('5. CLEAN ARCHITECTURE LAYERS'); + _write('-' * 40); + _write('Domain Layer (Room entity):'); + _write(' - Business representation'); + _write(' - Should have: id, name (display), building, floor, etc.'); + _write(); + _write('Data Layer (RoomModel):'); + _write(' - Maps to/from API structure'); + _write(' - Should mirror API fields closely'); + _write(); + _write('Data Source:'); + _write(' - Parses API response (real or mock)'); + _write(' - Transforms to RoomModel'); + _write(' - Should work identically for both'); + + _write(); + _write('6. KEY QUESTIONS TO CONSIDER'); + _write('-' * 40); + _write('Q1: Should RoomModel.name contain the display-ready string?'); + _write(' Current: YES - "(Building) Room" format'); + _write(' Alternative: Store raw room number, format in UI?'); + _write(); + _write('Q2: Should mock data use getMockPmsRoomsJson() everywhere?'); + _write(' Current: Uses getMockRooms() entities directly'); + _write(' Proposed: Parse JSON like real API does'); + _write(); + _write('Q3: Where should display formatting happen?'); + _write(' Option A: In data source (current for real API)'); + _write(' Option B: In repository'); + _write(' Option C: In presentation layer'); + _write(); + _write('Q4: Should Room entity have raw or formatted name?'); + _write(' Current: Formatted "(Building) Room"'); + _write(' Alternative: Raw room number + separate building field'); + + _write(); + _write('7. MVVM & CLEAN ARCHITECTURE COMPLIANCE'); + _write('-' * 40); + _write('βœ“ View: Displays what ViewModel provides'); + _write('βœ“ ViewModel: Gets data from Repository via UseCase'); + _write('βœ“ Repository: Converts between Model and Entity'); + _write('βœ“ DataSource: Handles API/Mock consistently'); + _write('βœ“ Dependency Injection: All via Riverpod'); + + _write(); + _write('=' * 80); + _write('ANALYSIS COMPLETE'); + _write('=' * 80); +} diff --git a/scripts/analyze_room_display_lines.dart b/scripts/analyze_room_display_lines.dart index 3da74a8..09d1253 100644 --- a/scripts/analyze_room_display_lines.dart +++ b/scripts/analyze_room_display_lines.dart @@ -1,106 +1,119 @@ #!/usr/bin/env dart +import 'dart:io'; + +void _write([String? message]) => stdout.writeln(message ?? ''); + /// Analyze why development shows 3 lines while staging shows 2 lines void main() { - print('=' * 80); - print('ANALYZING ROOM LIST DISPLAY LINES'); - print('=' * 80); - - print('\n1. UI STRUCTURE (rooms_screen.dart lines 148-161)'); - print('-' * 40); - print('The UnifiedListItem shows:'); - print(' Line 1: title (roomVm.name)'); - print(' Line 2+: subtitleLines array'); - print(''); - print('subtitleLines construction:'); - print(' IF roomVm.locationDisplay.isNotEmpty THEN'); - print(' ADD line with locationDisplay'); - print(' ALWAYS ADD line with device count'); - - print('\n2. LOCATION DISPLAY LOGIC (room_view_models.dart lines 34-43)'); - print('-' * 40); - print('locationDisplay getter:'); - print(' IF building != null β†’ adds building'); - print(' IF floor != null β†’ adds "Floor \$floor"'); - print(' Returns: parts.join(" ")'); - print(''); - print('Example outputs:'); - print(' building="North Tower", floor=1 β†’ "North Tower Floor 1"'); - print(' building=null, floor=1 β†’ "Floor 1"'); - print(' building="North Tower", floor=null β†’ "North Tower"'); - print(' building=null, floor=null β†’ "" (empty string)'); - - print('\n3. DATA FLOW ANALYSIS'); - print('-' * 40); - - print('DEVELOPMENT (after our fix):'); - print(' RoomMockDataSource parses JSON:'); - print(' - Sets name: "(North Tower) 101"'); - print(' - Sets building: "North Tower"'); - print(' - Sets floor: "1" (extracted from room number)'); - print(' RoomViewModel gets:'); - print(' - name: "(North Tower) 101"'); - print(' - building: "North Tower"'); - print(' - floor: "1"'); - print(' - locationDisplay: "North Tower Floor 1" ← NOT EMPTY!'); - print(' UI shows 3 lines:'); - print(' 1. "(North Tower) 101"'); - print(' 2. "North Tower Floor 1" ← EXTRA LINE!'); - print(' 3. "X/Y devices online"'); - - print('\nSTAGING:'); - print(' RemoteDataSource parses JSON:'); - print(' - Sets name: "(Interurban) 803"'); - print(' - Sets building: "" (empty or null)'); - print(' - Sets floor: "" (empty or null)'); - print(' RoomViewModel gets:'); - print(' - name: "(Interurban) 803"'); - print(' - building: null or empty'); - print(' - floor: null or empty'); - print(' - locationDisplay: "" ← EMPTY!'); - print(' UI shows 2 lines:'); - print(' 1. "(Interurban) 803"'); - print(' 2. "X/Y devices online"'); - - print('\n4. THE PROBLEM'); - print('-' * 40); - print('Development sets building and floor fields, causing locationDisplay'); - print('to return a non-empty string, which adds an extra line to the UI.'); - print(''); - print('Staging does NOT set building and floor (or sets them empty),'); - print('so locationDisplay returns empty string and no extra line is added.'); - - print('\n5. WHY THIS HAPPENS'); - print('-' * 40); - print('In RoomMockDataSource (after our fix):'); - print(' building: propertyName ?? "" β†’ "North Tower"'); - print(' floor: _extractFloor(roomNumber) β†’ "1"'); - print(''); - print('In RemoteDataSource:'); - print(' building: roomData["building"]?.toString() ?? ""'); - print(' floor: roomData["floor"]?.toString() ?? ""'); - print(' β†’ The API likely does NOT return building/floor fields!'); - - print('\n6. THE ROOT CAUSE'); - print('-' * 40); - print('The real API (staging) does not include "building" or "floor" fields'); - print('in the room data, so these remain empty/null.'); - print(''); - print('Our mock data source is setting these fields from the parsed data,'); - print('causing the extra location line to appear.'); - print(''); - print('Since the room name already contains "(Building) Room" format,'); - print('the separate building/floor fields are redundant!'); - - print('\n7. SOLUTION'); - print('-' * 40); - print('RoomMockDataSource should NOT set building and floor fields'); - print('(or set them to empty) to match staging behavior.'); - print(''); - print('The display name already contains all needed information:'); - print(' "(North Tower) 101" - no need for separate location line'); - - print('\n' + '=' * 80); - print('ANALYSIS COMPLETE'); - print('=' * 80); -} \ No newline at end of file + _write('=' * 80); + _write('ANALYZING ROOM LIST DISPLAY LINES'); + _write('=' * 80); + + _write(); + _write('1. UI STRUCTURE (rooms_screen.dart lines 148-161)'); + _write('-' * 40); + _write('The UnifiedListItem shows:'); + _write(' Line 1: title (roomVm.name)'); + _write(' Line 2+: subtitleLines array'); + _write(); + _write('subtitleLines construction:'); + _write(' IF roomVm.locationDisplay.isNotEmpty THEN'); + _write(' ADD line with locationDisplay'); + _write(' ALWAYS ADD line with device count'); + + _write(); + _write('2. LOCATION DISPLAY LOGIC (room_view_models.dart lines 34-43)'); + _write('-' * 40); + _write('locationDisplay getter:'); + _write(' IF building != null β†’ adds building'); + _write(r' IF floor != null β†’ adds "Floor $floor"'); + _write(' Returns: parts.join(" ")'); + _write(); + _write('Example outputs:'); + _write(' building="North Tower", floor=1 β†’ "North Tower Floor 1"'); + _write(' building=null, floor=1 β†’ "Floor 1"'); + _write(' building="North Tower", floor=null β†’ "North Tower"'); + _write(' building=null, floor=null β†’ "" (empty string)'); + + _write(); + _write('3. DATA FLOW ANALYSIS'); + _write('-' * 40); + + _write('DEVELOPMENT (after our fix):'); + _write(' RoomMockDataSource parses JSON:'); + _write(' - Sets name: "(North Tower) 101"'); + _write(' - Sets building: "North Tower"'); + _write(' - Sets floor: "1" (extracted from room number)'); + _write(' RoomViewModel gets:'); + _write(' - name: "(North Tower) 101"'); + _write(' - building: "North Tower"'); + _write(' - floor: "1"'); + _write(' - locationDisplay: "North Tower Floor 1" ← NOT EMPTY!'); + _write(' UI shows 3 lines:'); + _write(' 1. "(North Tower) 101"'); + _write(' 2. "North Tower Floor 1" ← EXTRA LINE!'); + _write(' 3. "X/Y devices online"'); + + _write(); + _write('STAGING:'); + _write(' RemoteDataSource parses JSON:'); + _write(' - Sets name: "(Interurban) 803"'); + _write(' - Sets building: "" (empty or null)'); + _write(' - Sets floor: "" (empty or null)'); + _write(' RoomViewModel gets:'); + _write(' - name: "(Interurban) 803"'); + _write(' - building: null or empty'); + _write(' - floor: null or empty'); + _write(' - locationDisplay: "" ← EMPTY!'); + _write(' UI shows 2 lines:'); + _write(' 1. "(Interurban) 803"'); + _write(' 2. "X/Y devices online"'); + + _write(); + _write('4. THE PROBLEM'); + _write('-' * 40); + _write('Development sets building and floor fields, causing locationDisplay'); + _write('to return a non-empty string, which adds an extra line to the UI.'); + _write(); + _write('Staging does NOT set building and floor (or sets them empty),'); + _write('so locationDisplay returns empty string and no extra line is added.'); + + _write(); + _write('5. WHY THIS HAPPENS'); + _write('-' * 40); + _write('In RoomMockDataSource (after our fix):'); + _write(' building: propertyName ?? "" β†’ "North Tower"'); + _write(' floor: _extractFloor(roomNumber) β†’ "1"'); + _write(); + _write('In RemoteDataSource:'); + _write(' building: roomData["building"]?.toString() ?? ""'); + _write(' floor: roomData["floor"]?.toString() ?? ""'); + _write(' β†’ The API likely does NOT return building/floor fields!'); + + _write(); + _write('6. THE ROOT CAUSE'); + _write('-' * 40); + _write('The real API (staging) does not include "building" or "floor" fields'); + _write('in the room data, so these remain empty/null.'); + _write(); + _write('Our mock data source is setting these fields from the parsed data,'); + _write('causing the extra location line to appear.'); + _write(); + _write('Since the room name already contains "(Building) Room" format,'); + _write('the separate building/floor fields are redundant!'); + + _write(); + _write('7. SOLUTION'); + _write('-' * 40); + _write('RoomMockDataSource should NOT set building and floor fields'); + _write('(or set them to empty) to match staging behavior.'); + _write(); + _write('The display name already contains all needed information:'); + _write(' "(North Tower) 101" - no need for separate location line'); + + _write(); + _write('=' * 80); + _write('ANALYSIS COMPLETE'); + _write('=' * 80); +} diff --git a/scripts/analyze_staging_fallback.dart b/scripts/analyze_staging_fallback.dart index 5e38456..f1e9af2 100644 --- a/scripts/analyze_staging_fallback.dart +++ b/scripts/analyze_staging_fallback.dart @@ -1,85 +1,103 @@ #!/usr/bin/env dart +import 'dart:io'; + +void _write([String? message]) => stdout.writeln(message ?? ''); + /// Deep analysis of why staging might be falling back to stringified IDs void main() { - print('=' * 80); - print('DEEP ANALYSIS: STAGING FALLBACK TO STRINGIFIED ID'); - print('=' * 80); - - print('\n1. UNDERSTANDING THE FALLBACK:'); - print('-' * 40); - print('When we see "Room 128" instead of "(Interurban) 803", it means:'); - print(' - The parser received roomData["name"] as null or undefined'); - print(' - It fell back to: "Room \${roomData["id"]}"'); - - print('\n2. KEY OBSERVATION:'); - print('-' * 40); - print('The fallback uses the CORRECT ID (128), which means:'); - print(' βœ“ The API response contains the room'); - print(' βœ“ The room has the correct ID'); - print(' βœ— But the name field is missing or null'); - - print('\n3. CRITICAL CODE PATH:'); - print('-' * 40); - print('room_remote_data_source.dart line 45-46:'); - print(' final response = await apiService.get('); - print(' "/api/pms_rooms.json?page_size=0",'); - print(' );'); - print(''); - print('Notice: NO field selection for rooms!'); - print('Unlike devices which might use &only=... parameter'); - - print('\n4. HYPOTHESIS TESTING:'); - print('-' * 40); - - print('\nHypothesis A: API returns different format with page_size=0'); - print(' - Maybe returns: [{"id": 128}] without name field'); - print(' - Test: Need to log raw API response'); - - print('\nHypothesis B: Room parser gets wrong data structure'); - print(' - Maybe room data is nested differently'); - print(' - Test: Log roomData before parsing'); - - print('\nHypothesis C: Some rooms genuinely have null names in DB'); - print(' - Staging DB might have incomplete data'); - print(' - Test: Check specific room IDs that show fallback'); - - print('\nHypothesis D: Field extraction issue'); - print(' - The metadata field includes devices which complicates parsing'); - print(' - Test: Check if _extractDeviceIds affects the room data'); - - print('\n5. LOGGING NEEDED:'); - print('-' * 40); - print('Add these logs to room_remote_data_source.dart:'); - print(''); - print('1. After line 46 (API call):'); - print(' _logger.d("Raw API response type: \${response.data.runtimeType}");'); - print(' _logger.d("Raw API response: \${response.data}");'); - print(''); - print('2. Before line 69 (parsing each room):'); - print(' _logger.d("Parsing room data: \$roomData");'); - print(' _logger.d("Room name field: \${roomData["name"]}");'); - - print('\n6. POTENTIAL FIXES:'); - print('-' * 40); - - print('\nFix 1: Add defensive logging (temporary)'); - print(' if (roomData["name"] == null) {'); - print(' _logger.w("Room \${roomData["id"]} has null name!");'); - print(' }'); - - print('\nFix 2: Check for empty string as well as null'); - print(' final rawName = roomData["name"]?.toString();'); - print(' final name = (rawName?.isNotEmpty == true) '); - print(' ? rawName '); - print(' : "Room \${roomData["id"]}";'); - - print('\nFix 3: Add more detailed fallback'); - print(' name: roomData["name"]?.toString() ??'); - print(' roomData["room_number"]?.toString() ??'); - print(' "Room \${roomData["id"]}";'); - - print('\n' + '=' * 80); - print('RECOMMENDATION: Add logging first to understand actual data'); - print('=' * 80); -} \ No newline at end of file + _write('=' * 80); + _write('DEEP ANALYSIS: STAGING FALLBACK TO STRINGIFIED ID'); + _write('=' * 80); + + _write(); + _write('1. UNDERSTANDING THE FALLBACK:'); + _write('-' * 40); + _write('When we see "Room 128" instead of "(Interurban) 803", it means:'); + _write(' - The parser received roomData["name"] as null or undefined'); + _write(r' - It fell back to: "Room ${roomData["id"]}"'); + + _write(); + _write('2. KEY OBSERVATION:'); + _write('-' * 40); + _write('The fallback uses the CORRECT ID (128), which means:'); + _write(' βœ“ The API response contains the room'); + _write(' βœ“ The room has the correct ID'); + _write(' βœ— But the name field is missing or null'); + + _write(); + _write('3. CRITICAL CODE PATH:'); + _write('-' * 40); + _write('room_remote_data_source.dart line 45-46:'); + _write(' final response = await apiService.get('); + _write(' "/api/pms_rooms.json?page_size=0",'); + _write(' );'); + _write(); + _write('Notice: NO field selection for rooms!'); + _write('Unlike devices which might use &only=... parameter'); + + _write(); + _write('4. HYPOTHESIS TESTING:'); + _write('-' * 40); + + _write(); + _write('Hypothesis A: API returns different format with page_size=0'); + _write(' - Maybe returns: [{"id": 128}] without name field'); + _write(' - Test: Need to log raw API response'); + + _write(); + _write('Hypothesis B: Room parser gets wrong data structure'); + _write(' - Maybe room data is nested differently'); + _write(' - Test: Log roomData before parsing'); + + _write(); + _write('Hypothesis C: Some rooms genuinely have null names in DB'); + _write(' - Staging DB might have incomplete data'); + _write(' - Test: Check specific room IDs that show fallback'); + + _write(); + _write('Hypothesis D: Field extraction issue'); + _write(' - The metadata field includes devices which complicates parsing'); + _write(' - Test: Check if _extractDeviceIds affects the room data'); + + _write(); + _write('5. LOGGING NEEDED:'); + _write('-' * 40); + _write('Add these logs to room_remote_data_source.dart:'); + _write(); + _write('1. After line 46 (API call):'); + _write(r' _logger.d("Raw API response type: ${response.data.runtimeType}");'); + _write(r' _logger.d("Raw API response: ${response.data}");'); + _write(); + _write('2. Before line 69 (parsing each room):'); + _write(r' _logger.d("Parsing room data: $roomData");'); + _write(r' _logger.d("Room name field: ${roomData["name"]}");'); + + _write(); + _write('6. POTENTIAL FIXES:'); + _write('-' * 40); + + _write(); + _write('Fix 1: Add defensive logging (temporary)'); + _write(' if (roomData["name"] == null) {'); + _write(r' _logger.w("Room ${roomData["id"]} has null name!");'); + _write(' }'); + + _write(); + _write('Fix 2: Check for empty string as well as null'); + _write(' final rawName = roomData["name"]?.toString();'); + _write(' final name = (rawName?.isNotEmpty == true) '); + _write(' ? rawName '); + _write(r' : "Room ${roomData["id"]}";'); + + _write(); + _write('Fix 3: Add more detailed fallback'); + _write(' name: roomData["name"]?.toString() ??'); + _write(' roomData["room_number"]?.toString() ??'); + _write(r' "Room ${roomData["id"]}";'); + + _write(); + _write('=' * 80); + _write('RECOMMENDATION: Add logging first to understand actual data'); + _write('=' * 80); +} diff --git a/scripts/check_room_entity_names.dart b/scripts/check_room_entity_names.dart index 034e12c..c85f150 100644 --- a/scripts/check_room_entity_names.dart +++ b/scripts/check_room_entity_names.dart @@ -1,62 +1,72 @@ #!/usr/bin/env dart +import 'dart:io'; + +void _write([String? message]) => stdout.writeln(message ?? ''); + /// Check what Room entity names look like in getMockRooms() void main() { - print('=' * 80); - print('CHECKING ROOM ENTITY NAMES IN MOCK DATA'); - print('=' * 80); - - print('\n1. EXPECTED BEHAVIOR IN DEVELOPMENT MODE'); - print('-' * 40); - - print('Data flow in development:'); - print('1. RoomRepositoryImpl checks EnvironmentConfig.isDevelopment'); - print('2. If true, calls mockDataSource.getRooms()'); - print('3. RoomMockDataSource calls mockDataService.getMockRooms()'); - print('4. Returns Room entities with their .name field'); - print('5. UI displays room.name directly'); - - print('\n2. KEY OBSERVATION'); - print('-' * 40); - - print('IMPORTANT: In development mode, the Room entities from getMockRooms()'); - print('are used DIRECTLY. They are NOT parsed from JSON.'); - print(''); - print('This means:'); - print('- The Room.name field is what gets displayed'); - print('- This name should already be formatted as "(Building) Room"'); - print('- But it might not be if getMockRooms() creates entities differently'); - - print('\n3. CHECKING MOCK_DATA_SERVICE.DART'); - print('-' * 40); - - print('Looking at _generateRooms() method...'); - print(''); - print('The Room entities are created with:'); - print(' name: location (e.g., "(North Tower) 311")'); - print(' building: parsed from location'); - print(' location: the full formatted string'); - print(''); - print('So Room.name = location = "(Building) Room" format'); - - print('\n4. HYPOTHESIS'); - print('-' * 40); - - print('If rooms are displaying incorrectly, possible causes:'); - print('1. The UI might be showing a different field (not room.name)'); - print('2. There might be caching of old data'); - print('3. The provider might be returning stale data'); - print('4. The Room entities might be transformed somewhere'); - - print('\n5. WHAT TO CHECK NEXT'); - print('-' * 40); - - print('1. Clear all app data and restart'); - print('2. Check what field the UI is actually displaying'); - print('3. Add logging to see actual Room entity values'); - print('4. Check if any transformations happen in repository'); - - print('\n' + '=' * 80); - print('ANALYSIS COMPLETE'); - print('=' * 80); -} \ No newline at end of file + _write('=' * 80); + _write('CHECKING ROOM ENTITY NAMES IN MOCK DATA'); + _write('=' * 80); + + _write(); + _write('1. EXPECTED BEHAVIOR IN DEVELOPMENT MODE'); + _write('-' * 40); + + _write('Data flow in development:'); + _write('1. RoomRepositoryImpl checks EnvironmentConfig.isDevelopment'); + _write('2. If true, calls mockDataSource.getRooms()'); + _write('3. RoomMockDataSource calls mockDataService.getMockRooms()'); + _write('4. Returns Room entities with their .name field'); + _write('5. UI displays room.name directly'); + + _write(); + _write('2. KEY OBSERVATION'); + _write('-' * 40); + + _write('IMPORTANT: In development mode, the Room entities from getMockRooms()'); + _write('are used DIRECTLY. They are NOT parsed from JSON.'); + _write(); + _write('This means:'); + _write('- The Room.name field is what gets displayed'); + _write('- This name should already be formatted as "(Building) Room"'); + _write('- But it might not be if getMockRooms() creates entities differently'); + + _write(); + _write('3. CHECKING MOCK_DATA_SERVICE.DART'); + _write('-' * 40); + + _write('Looking at _generateRooms() method...'); + _write(); + _write('The Room entities are created with:'); + _write(' name: location (e.g., "(North Tower) 311")'); + _write(' building: parsed from location'); + _write(' location: the full formatted string'); + _write(); + _write('So Room.name = location = "(Building) Room" format'); + + _write(); + _write('4. HYPOTHESIS'); + _write('-' * 40); + + _write('If rooms are displaying incorrectly, possible causes:'); + _write('1. The UI might be showing a different field (not room.name)'); + _write('2. There might be caching of old data'); + _write('3. The provider might be returning stale data'); + _write('4. The Room entities might be transformed somewhere'); + + _write(); + _write('5. WHAT TO CHECK NEXT'); + _write('-' * 40); + + _write('1. Clear all app data and restart'); + _write('2. Check what field the UI is actually displaying'); + _write('3. Add logging to see actual Room entity values'); + _write('4. Check if any transformations happen in repository'); + + _write(); + _write('=' * 80); + _write('ANALYSIS COMPLETE'); + _write('=' * 80); +} diff --git a/scripts/complete_room_fix_implementation.dart b/scripts/complete_room_fix_implementation.dart index 3dd607e..962efd0 100644 --- a/scripts/complete_room_fix_implementation.dart +++ b/scripts/complete_room_fix_implementation.dart @@ -1,143 +1,168 @@ #!/usr/bin/env dart +import 'dart:io'; + +void _write([String? message]) => stdout.writeln(message ?? ''); + /// Complete implementation plan for room display fix void main() { - print('=' * 80); - print('COMPLETE ROOM FIX IMPLEMENTATION PLAN'); - print('=' * 80); - - print('\n1. WHAT NEEDS TO BE FIXED:'); - print('-' * 40); - print('A. Parser - check "room" field and build display name'); - print('B. Mock - match real API structure exactly'); - print(''); - print('Both fixes are REQUIRED for consistency!'); - - print('\n2. MOCK DATA FIX (mock_data_service.dart):'); - print('-' * 40); - - print('\nCURRENT MOCK (WRONG):'); - print('```dart'); - print('// In getMockPmsRoomsJson():'); - print('pmsRooms.add({'); - print(' "id": int.parse(room.id),'); - print(' "name": room.location, // "(North Tower) 101"'); - print('});'); - print('```'); - - print('\nFIXED MOCK (MATCHES REAL API):'); - print('```dart'); - print('// In getMockPmsRoomsJson():'); - print('pmsRooms.add({'); - print(' "id": int.parse(room.id),'); - print(' "room": room.name.split("-").last, // Just "101"'); - print(' "pms_property": {'); - print(' "id": 1,'); - print(' "name": room.building ?? "Unknown", // "North Tower"'); - print(' },'); - print('});'); - print('```'); - - print('\n3. PARSER FIX (room_remote_data_source.dart):'); - print('-' * 40); - - print('\nCURRENT PARSER (WRONG):'); - print('```dart'); - print('name: (roomData["name"] ?? "Room \${roomData["id"]}").toString(),'); - print('```'); - - print('\nFIXED PARSER (WORKS WITH REAL API):'); - print('```dart'); - print('// Build display name from room and property'); - print('final roomNumber = roomData["room"]?.toString() ?? roomData["name"]?.toString();'); - print('final propertyName = roomData["pms_property"]?["name"]?.toString();'); - print(''); - print('// Format as "(Building) Room" if we have both'); - print('final displayName = propertyName != null && roomNumber != null'); - print(' ? "(\$propertyName) \$roomNumber"'); - print(' : roomNumber ?? "Room \${roomData["id"]}";'); - print(''); - print('allRooms.add(RoomModel('); - print(' id: roomData["id"]?.toString() ?? "",'); - print(' name: displayName,'); - print(' ...'); - print('```'); - - print('\n4. SPECIAL ROOMS IN MOCK:'); - print('-' * 40); - - print('\nCURRENT SPECIAL ROOMS:'); - print('```dart'); - print('specialRooms.add({'); - print(' "id": roomId++,'); - print(' "name": "(Central Complex) Lobby",'); - print('});'); - print('```'); - - print('\nFIXED SPECIAL ROOMS:'); - print('```dart'); - print('specialRooms.add({'); - print(' "id": roomId++,'); - print(' "room": area, // Just "Lobby"'); - print(' "pms_property": {'); - print(' "id": 1,'); - print(' "name": "Central Complex",'); - print(' },'); - print('});'); - print('```'); - - print('\n5. DATA FLOW VERIFICATION:'); - print('-' * 40); - - print('\nDEVELOPMENT (Mock):'); - print(' Input: {"id": 1000, "room": "101", "pms_property": {"name": "North Tower"}}'); - print(' Parser: Finds room="101", property="North Tower"'); - print(' Output: "(North Tower) 101" βœ“'); - - print('\nSTAGING (Real API):'); - print(' Input: {"id": 128, "room": "803", "pms_property": {"name": "Interurban"}}'); - print(' Parser: Finds room="803", property="Interurban"'); - print(' Output: "(Interurban) 803" βœ“'); - - print('\n6. TEST CASES:'); - print('-' * 40); - - print('\nTest 1: Normal room with property'); - print(' Input: {"id": 1, "room": "101", "pms_property": {"name": "Tower A"}}'); - print(' Expected: "(Tower A) 101"'); - - print('\nTest 2: Room without property'); - print(' Input: {"id": 2, "room": "102"}'); - print(' Expected: "102"'); - - print('\nTest 3: Legacy format (fallback)'); - print(' Input: {"id": 3, "name": "(Old Format) 103"}'); - print(' Expected: "(Old Format) 103"'); - - print('\nTest 4: No room data'); - print(' Input: {"id": 4}'); - print(' Expected: "Room 4"'); - - print('\n7. BENEFITS OF THIS APPROACH:'); - print('-' * 40); - print('βœ“ Mock matches real API structure exactly'); - print('βœ“ Parser works with both staging and development'); - print('βœ“ Displays consistent "(Building) Room" format'); - print('βœ“ Handles missing data gracefully'); - print('βœ“ Backwards compatible with old format'); - - print('\n8. FILES TO CHANGE:'); - print('-' * 40); - print('1. lib/core/services/mock_data_service.dart'); - print(' - Update getMockPmsRoomsJson()'); - print(' - Update _generateSpecialRooms()'); - print(''); - print('2. lib/features/rooms/data/datasources/room_remote_data_source.dart'); - print(' - Update room parsing logic (lines 87-90)'); - print(' - Update getRoom() method similarly'); - print(' - Remove diagnostic logging'); - - print('\n' + '=' * 80); - print('IMPLEMENTATION READY'); - print('=' * 80); -} \ No newline at end of file + _write('=' * 80); + _write('COMPLETE ROOM FIX IMPLEMENTATION PLAN'); + _write('=' * 80); + + _write(); + _write('1. WHAT NEEDS TO BE FIXED:'); + _write('-' * 40); + _write('A. Parser - check "room" field and build display name'); + _write('B. Mock - match real API structure exactly'); + _write(); + _write('Both fixes are REQUIRED for consistency!'); + + _write(); + _write('2. MOCK DATA FIX (mock_data_service.dart):'); + _write('-' * 40); + + _write(); + _write('CURRENT MOCK (WRONG):'); + _write('```dart'); + _write('// In getMockPmsRoomsJson():'); + _write('pmsRooms.add({'); + _write(' "id": int.parse(room.id),'); + _write(' "name": room.location, // "(North Tower) 101"'); + _write('});'); + _write('```'); + + _write(); + _write('FIXED MOCK (MATCHES REAL API):'); + _write('```dart'); + _write('// In getMockPmsRoomsJson():'); + _write('pmsRooms.add({'); + _write(' "id": int.parse(room.id),'); + _write(' "room": room.name.split("-").last, // Just "101"'); + _write(' "pms_property": {'); + _write(' "id": 1,'); + _write(' "name": room.building ?? "Unknown", // "North Tower"'); + _write(' },'); + _write('});'); + _write('```'); + + _write(); + _write('3. PARSER FIX (room_remote_data_source.dart):'); + _write('-' * 40); + + _write(); + _write('CURRENT PARSER (WRONG):'); + _write('```dart'); + _write(r'name: (roomData["name"] ?? "Room ${roomData["id"]}").toString(),'); + _write('```'); + + _write(); + _write('FIXED PARSER (WORKS WITH REAL API):'); + _write('```dart'); + _write('// Build display name from room and property'); + _write('final roomNumber = roomData["room"]?.toString() ?? roomData["name"]?.toString();'); + _write('final propertyName = roomData["pms_property"]?["name"]?.toString();'); + _write(); + _write('// Format as "(Building) Room" if we have both'); + _write('final displayName = propertyName != null && roomNumber != null'); + _write(r' ? "($propertyName) $roomNumber"'); + _write(r' : roomNumber ?? "Room ${roomData["id"]}";'); + _write(); + _write('allRooms.add(RoomModel('); + _write(' id: roomData["id"]?.toString() ?? "",'); + _write(' name: displayName,'); + _write(' ...'); + _write('```'); + + _write(); + _write('4. SPECIAL ROOMS IN MOCK:'); + _write('-' * 40); + + _write(); + _write('CURRENT SPECIAL ROOMS:'); + _write('```dart'); + _write('specialRooms.add({'); + _write(' "id": roomId++,'); + _write(' "name": "(Central Complex) Lobby",'); + _write('});'); + _write('```'); + + _write(); + _write('FIXED SPECIAL ROOMS:'); + _write('```dart'); + _write('specialRooms.add({'); + _write(' "id": roomId++,'); + _write(' "room": area, // Just "Lobby"'); + _write(' "pms_property": {'); + _write(' "id": 1,'); + _write(' "name": "Central Complex",'); + _write(' },'); + _write('});'); + _write('```'); + + _write(); + _write('5. DATA FLOW VERIFICATION:'); + _write('-' * 40); + + _write(); + _write('DEVELOPMENT (Mock):'); + _write(' Input: {"id": 1000, "room": "101", "pms_property": {"name": "North Tower"}}'); + _write(' Parser: Finds room="101", property="North Tower"'); + _write(' Output: "(North Tower) 101" βœ“'); + + _write(); + _write('STAGING (Real API):'); + _write(' Input: {"id": 128, "room": "803", "pms_property": {"name": "Interurban"}}'); + _write(' Parser: Finds room="803", property="Interurban"'); + _write(' Output: "(Interurban) 803" βœ“'); + + _write(); + _write('6. TEST CASES:'); + _write('-' * 40); + + _write(); + _write('Test 1: Normal room with property'); + _write(' Input: {"id": 1, "room": "101", "pms_property": {"name": "Tower A"}}'); + _write(' Expected: "(Tower A) 101"'); + + _write(); + _write('Test 2: Room without property'); + _write(' Input: {"id": 2, "room": "102"}'); + _write(' Expected: "102"'); + + _write(); + _write('Test 3: Legacy format (fallback)'); + _write(' Input: {"id": 3, "name": "(Old Format) 103"}'); + _write(' Expected: "(Old Format) 103"'); + + _write(); + _write('Test 4: No room data'); + _write(' Input: {"id": 4}'); + _write(' Expected: "Room 4"'); + + _write(); + _write('7. BENEFITS OF THIS APPROACH:'); + _write('-' * 40); + _write('βœ“ Mock matches real API structure exactly'); + _write('βœ“ Parser works with both staging and development'); + _write('βœ“ Displays consistent "(Building) Room" format'); + _write('βœ“ Handles missing data gracefully'); + _write('βœ“ Backwards compatible with old format'); + + _write(); + _write('8. FILES TO CHANGE:'); + _write('-' * 40); + _write('1. lib/core/services/mock_data_service.dart'); + _write(' - Update getMockPmsRoomsJson()'); + _write(' - Update _generateSpecialRooms()'); + _write(); + _write('2. lib/features/rooms/data/datasources/room_remote_data_source.dart'); + _write(' - Update room parsing logic (lines 87-90)'); + _write(' - Update getRoom() method similarly'); + _write(' - Remove diagnostic logging'); + + _write(); + _write('=' * 80); + _write('IMPLEMENTATION READY'); + _write('=' * 80); +} diff --git a/scripts/comprehensive_device_type_analysis.dart b/scripts/comprehensive_device_type_analysis.dart index 0666bae..d8fa383 100644 --- a/scripts/comprehensive_device_type_analysis.dart +++ b/scripts/comprehensive_device_type_analysis.dart @@ -1,86 +1,92 @@ #!/usr/bin/env dart -/// Comprehensive Device Type Analysis -/// Maps all device type usage across data and presentation layers - import 'dart:io'; +void _write([String? message]) => stdout.writeln(message ?? ''); + void main() async { - print('=== Comprehensive Device Type Analysis ==='); - print('Date: ${DateTime.now()}'); - print(''); + _write('=== Comprehensive Device Type Analysis ==='); + _write('Date: ${DateTime.now()}'); + _write(); await analyzeDeviceTypeUsage(); } /// Complete analysis of device type inconsistencies Future analyzeDeviceTypeUsage() async { - print('πŸ” COMPREHENSIVE DEVICE TYPE MAPPING'); - - // Step 1: Document what data sources create - print('\n1. DATA SOURCE LAYER (what gets created):'); + _write('πŸ” COMPREHENSIVE DEVICE TYPE MAPPING'); + + _write(); + _write('1. DATA SOURCE LAYER (what gets created):'); await analyzeDataSourceTypes(); - - // Step 2: Document what presentation layer expects - print('\n2. PRESENTATION LAYER (what UI expects):'); + + _write(); + _write('2. PRESENTATION LAYER (what UI expects):'); await analyzePresentationTypes(); - - // Step 3: Identify all inconsistencies - print('\n3. CRITICAL INCONSISTENCIES:'); + + _write(); + _write('3. CRITICAL INCONSISTENCIES:'); await identifyInconsistencies(); - - // Step 4: Map all crash points - print('\n4. CRASH POINTS IDENTIFIED:'); + + _write(); + _write('4. CRASH POINTS IDENTIFIED:'); await identifyCrashPoints(); - print('\n=== ANALYSIS COMPLETE ==='); + _write(); + _write('=== ANALYSIS COMPLETE ==='); } /// Analyze what device types the data sources create Future analyzeDataSourceTypes() async { - print(' πŸ“‘ Remote Data Source Creates:'); - print(' device_remote_data_source.dart lines 277, 293, 309, 325:'); - print(' - Access Points: "access_point"'); - print(' - Media Converters (ONTs): "ont"'); - print(' - Switch Devices: "switch"'); - print(' - WLAN Devices: "wlan_controller"'); - - print('\n πŸ”§ Mock Data Service Creates:'); - print(' mock_data_service.dart lines 304, 350, 407, 258:'); - print(' - Access Points: "access_point"'); - print(' - ONTs: "ont"'); - print(' - Switches: "switch"'); - print(' - WLAN Controllers: "wlan_controller"'); - - print('\n βœ… DATA LAYER IS CONSISTENT!'); + _write(' πŸ“‘ Remote Data Source Creates:'); + _write(' device_remote_data_source.dart lines 277, 293, 309, 325:'); + _write(' - Access Points: "access_point"'); + _write(' - Media Converters (ONTs): "ont"'); + _write(' - Switch Devices: "switch"'); + _write(' - WLAN Devices: "wlan_controller"'); + + _write(); + _write(' πŸ”§ Mock Data Service Creates:'); + _write(' mock_data_service.dart lines 304, 350, 407, 258:'); + _write(' - Access Points: "access_point"'); + _write(' - ONTs: "ont"'); + _write(' - Switches: "switch"'); + _write(' - WLAN Controllers: "wlan_controller"'); + + _write(); + _write(' βœ… DATA LAYER IS CONSISTENT!'); } /// Analyze what device types the presentation layer expects Future analyzePresentationTypes() async { - print(' πŸ“± Room Detail Screen Expects:'); - print(' room_detail_screen.dart lines 452, 458, 464:'); - print(' - Access Points: "Access Point" ❌'); - print(' - Switches: "Switch" ❌'); - print(' - ONTs: "ont" βœ…'); - - print('\n πŸ“± Device Detail Screen Expects:'); - print(' device_detail_screen.dart lines 318, 394, 471:'); - print(' - Access Points: "Access Point" ❌'); - - print('\n πŸ“± Devices Screen Expects:'); - print(' devices_screen.dart lines 166-168:'); - print(' - Access Points: "access_point" βœ…'); - print(' - Switches: "switch" βœ…'); - print(' - ONTs: "ont" βœ…'); - - print('\n πŸ“± Device Header Card Expects:'); - print(' device_header_card.dart lines 149, 152, 154, 164:'); - print(' - Access Points: "access_point" βœ…'); - print(' - Switches: "switch" βœ…'); - print(' - ONTs: "ont" βœ…'); - print(' - WLAN Controllers: "wlan_controller" βœ…'); - - print('\n πŸ” MIXED CONSISTENCY! Some use API names, some use display names!'); + _write(' πŸ“± Room Detail Screen Expects:'); + _write(' room_detail_screen.dart lines 452, 458, 464:'); + _write(' - Access Points: "Access Point" ❌'); + _write(' - Switches: "Switch" ❌'); + _write(' - ONTs: "ont" βœ…'); + + _write(); + _write(' πŸ“± Device Detail Screen Expects:'); + _write(' device_detail_screen.dart lines 318, 394, 471:'); + _write(' - Access Points: "Access Point" ❌'); + + _write(); + _write(' πŸ“± Devices Screen Expects:'); + _write(' devices_screen.dart lines 166-168:'); + _write(' - Access Points: "access_point" βœ…'); + _write(' - Switches: "switch" βœ…'); + _write(' - ONTs: "ont" βœ…'); + + _write(); + _write(' πŸ“± Device Header Card Expects:'); + _write(' device_header_card.dart lines 149, 152, 154, 164:'); + _write(' - Access Points: "access_point" βœ…'); + _write(' - Switches: "switch" βœ…'); + _write(' - ONTs: "ont" βœ…'); + _write(' - WLAN Controllers: "wlan_controller" βœ…'); + + _write(); + _write(' πŸ” MIXED CONSISTENCY! Some use API names, some use display names!'); } /// Identify critical inconsistencies @@ -136,54 +142,53 @@ Future identifyInconsistencies() async { severity: 'HIGH', ), ]; - + for (final issue in inconsistencies) { - print(' πŸ”₯ ${issue.severity}: ${issue.file}:${issue.line}'); - print(' Problem: ${issue.issue}'); - print(' Impact: ${issue.impact}'); - print(''); + _write(' πŸ”₯ ${issue.severity}: ${issue.file}:${issue.line}'); + _write(' Problem: ${issue.issue}'); + _write(' Impact: ${issue.impact}'); + _write(); } } /// Identify all crash points Future identifyCrashPoints() async { - print(' πŸ’₯ CRASH SCENARIO ANALYSIS:'); - - print('\n 1. ROOM DETAIL SCREEN _DevicesTab data() callback:'); - print(' - Line 413-416: device.pmsRoomId filtering'); - print(' - Line 452: .where((d) => d.type == "Access Point") returns EMPTY'); - print(' - Line 458: .where((d) => d.type == "Switch") returns EMPTY'); - print(' - Line 464: .where((d) => d.type == "ont") works correctly'); - print(' - RESULT: All device counts show 0, UI shows "No devices"'); - - print('\n 2. DEVICE LIST ITEM CREATION:'); - print(' - Line 679: Icon selection defaults to Icons.device_hub'); - print(' - Line 484: device.ipAddress access (safe - nullable)'); - print(' - RESULT: Wrong icons but no crash'); - - print('\n 3. DEVICE DETAIL SCREEN:'); - print(' - Line 318: Switch defaults to unknown device type'); - print(' - Line 394, 471: Access Point conditions never trigger'); - print(' - RESULT: Missing functionality, no crash'); - - print('\n 4. POTENTIAL EXCEPTION SOURCES:'); - print(' - Complex filtering in AsyncValue.when() data callback'); - print(' - No try-catch around device filtering operations'); - print(' - Room ID parsing with int.tryParse()'); - - print('\n πŸ’‘ PRIMARY CRASH CAUSE:'); - print(' Device type mismatch causes empty device lists,'); - print(' which can trigger null/empty state bugs in UI logic.'); + _write(' πŸ’₯ CRASH SCENARIO ANALYSIS:'); + + _write(); + _write(' 1. ROOM DETAIL SCREEN _DevicesTab data() callback:'); + _write(' - Line 413-416: device.pmsRoomId filtering'); + _write(' - Line 452: .where((d) => d.type == "Access Point") returns EMPTY'); + _write(' - Line 458: .where((d) => d.type == "Switch") returns EMPTY'); + _write(' - Line 464: .where((d) => d.type == "ont") works correctly'); + _write(' - RESULT: All device counts show 0, UI shows "No devices"'); + + _write(); + _write(' 2. DEVICE LIST ITEM CREATION:'); + _write(' - Line 679: Icon selection defaults to Icons.device_hub'); + _write(' - Line 484: device.ipAddress access (safe - nullable)'); + _write(' - RESULT: Wrong icons but no crash'); + + _write(); + _write(' 3. DEVICE DETAIL SCREEN:'); + _write(' - Line 318: Switch defaults to unknown device type'); + _write(' - Line 394, 471: Access Point conditions never trigger'); + _write(' - RESULT: Missing functionality, no crash'); + + _write(); + _write(' 4. POTENTIAL EXCEPTION SOURCES:'); + _write(' - Complex filtering in AsyncValue.when() data callback'); + _write(' - No try-catch around device filtering operations'); + _write(' - Room ID parsing with int.tryParse()'); + + _write(); + _write(' πŸ’‘ PRIMARY CRASH CAUSE:'); + _write(' Device type mismatch causes empty device lists,'); + _write(' which can trigger null/empty state bugs in UI logic.'); } /// Critical issue data structure class CriticalIssue { - final String file; - final int line; - final String issue; - final String impact; - final String severity; - CriticalIssue({ required this.file, required this.line, @@ -191,4 +196,10 @@ class CriticalIssue { required this.impact, required this.severity, }); -} \ No newline at end of file + + final String file; + final int line; + final String issue; + final String impact; + final String severity; +} diff --git a/scripts/comprehensive_integration_test.dart b/scripts/comprehensive_integration_test.dart index a4838a4..88a1b69 100644 --- a/scripts/comprehensive_integration_test.dart +++ b/scripts/comprehensive_integration_test.dart @@ -1,22 +1,25 @@ #!/usr/bin/env dart -/// Comprehensive Integration Test (Phase 5) -/// Tests that all fixes work together to resolve the devices tab crash +// Comprehensive Integration Test (Phase 5) +// Tests that all fixes work together to resolve the devices tab crash +// ignore_for_file: avoid_catching_errors, avoid_catches_without_on_clauses, require_trailing_commas, unreachable_from_main import 'dart:io'; +void _write([String? message]) => stdout.writeln(message ?? ''); + void main() async { - print('=== Comprehensive Integration Test (Phase 5) ==='); - print('Date: ${DateTime.now()}'); - print(''); + _write('=== Comprehensive Integration Test (Phase 5) ==='); + _write('Date: ${DateTime.now()}'); + _write(''); await runIntegrationTests(); } /// Run comprehensive integration tests Future runIntegrationTests() async { - print('πŸ§ͺ COMPREHENSIVE INTEGRATION TESTING'); - print('Testing the complete fix from constants to UI...'); + _write('πŸ§ͺ COMPREHENSIVE INTEGRATION TESTING'); + _write('Testing the complete fix from constants to UI...'); var testsPassed = 0; var testsTotal = 0; @@ -25,124 +28,124 @@ Future runIntegrationTests() async { testsTotal++; if (testDeviceTypeConstants()) { testsPassed++; - print('βœ… Test 1: Device type constants integration PASSED'); + _write('βœ… Test 1: Device type constants integration PASSED'); } else { - print('❌ Test 1: Device type constants integration FAILED'); + _write('❌ Test 1: Device type constants integration FAILED'); } // Test 2: End-to-end device filtering testsTotal++; if (testEndToEndFiltering()) { testsPassed++; - print('βœ… Test 2: End-to-end device filtering PASSED'); + _write('βœ… Test 2: End-to-end device filtering PASSED'); } else { - print('❌ Test 2: End-to-end device filtering FAILED'); + _write('❌ Test 2: End-to-end device filtering FAILED'); } // Test 3: View model error handling testsTotal++; if (testViewModelErrorHandling()) { testsPassed++; - print('βœ… Test 3: View model error handling PASSED'); + _write('βœ… Test 3: View model error handling PASSED'); } else { - print('❌ Test 3: View model error handling FAILED'); + _write('❌ Test 3: View model error handling FAILED'); } // Test 4: UI crash prevention testsTotal++; if (testUICrashPrevention()) { testsPassed++; - print('βœ… Test 4: UI crash prevention PASSED'); + _write('βœ… Test 4: UI crash prevention PASSED'); } else { - print('❌ Test 4: UI crash prevention FAILED'); + _write('❌ Test 4: UI crash prevention FAILED'); } // Test 5: Architecture compliance testsTotal++; if (testArchitectureCompliance()) { testsPassed++; - print('βœ… Test 5: Architecture compliance PASSED'); + _write('βœ… Test 5: Architecture compliance PASSED'); } else { - print('❌ Test 5: Architecture compliance FAILED'); + _write('❌ Test 5: Architecture compliance FAILED'); } - print('\nπŸ“Š COMPREHENSIVE INTEGRATION TEST RESULTS:'); - print(' Passed: $testsPassed/$testsTotal'); + _write('\nπŸ“Š COMPREHENSIVE INTEGRATION TEST RESULTS:'); + _write(' Passed: $testsPassed/$testsTotal'); if (testsPassed == testsTotal) { - print('πŸŽ‰ ALL INTEGRATION TESTS PASSED!'); - print('βœ… DEVICES TAB CRASH IS FIXED!'); - print(''); - print('πŸ”§ FIXES IMPLEMENTED:'); - print(' βœ“ Created DeviceTypes constants (Domain Layer)'); - print(' βœ“ Verified data source consistency'); - print(' βœ“ Built RoomDeviceViewModel (MVVM pattern)'); - print(' βœ“ Fixed presentation layer device type checks'); - print(' βœ“ Added proper error handling with exceptions'); - print(' βœ“ Updated room detail screen and device detail screen'); - print(''); - print('πŸ—οΈ ARCHITECTURAL COMPLIANCE:'); - print(' βœ“ Clean Architecture - Domain defines contracts'); - print(' βœ“ MVVM Pattern - Business logic in ViewModels'); - print(' βœ“ Dependency Injection - Riverpod providers'); - print(' βœ“ Error Handling - Throwing exceptions as requested'); - print(' βœ“ Immutable State - Freezed classes'); - print(''); - print('πŸš€ THE DEVICES TAB SHOULD NO LONGER CRASH THE APP!'); + _write('πŸŽ‰ ALL INTEGRATION TESTS PASSED!'); + _write('βœ… DEVICES TAB CRASH IS FIXED!'); + _write(''); + _write('πŸ”§ FIXES IMPLEMENTED:'); + _write(' βœ“ Created DeviceTypes constants (Domain Layer)'); + _write(' βœ“ Verified data source consistency'); + _write(' βœ“ Built RoomDeviceViewModel (MVVM pattern)'); + _write(' βœ“ Fixed presentation layer device type checks'); + _write(' βœ“ Added proper error handling with exceptions'); + _write(' βœ“ Updated room detail screen and device detail screen'); + _write(''); + _write('πŸ—οΈ ARCHITECTURAL COMPLIANCE:'); + _write(' βœ“ Clean Architecture - Domain defines contracts'); + _write(' βœ“ MVVM Pattern - Business logic in ViewModels'); + _write(' βœ“ Dependency Injection - Riverpod providers'); + _write(' βœ“ Error Handling - Throwing exceptions as requested'); + _write(' βœ“ Immutable State - Freezed classes'); + _write(''); + _write('πŸš€ THE DEVICES TAB SHOULD NO LONGER CRASH THE APP!'); } else { - print('❌ INTEGRATION ISSUES FOUND!'); - print('πŸ“‹ Additional work needed'); + _write('❌ INTEGRATION ISSUES FOUND!'); + _write('πŸ“‹ Additional work needed'); exit(1); } } /// Test device type constants work correctly bool testDeviceTypeConstants() { - print(' πŸ” Testing Device Type Constants Integration...'); + _write(' πŸ” Testing Device Type Constants Integration...'); try { // Test that constants exist and are correct if (DeviceTypes.accessPoint != 'access_point') { - print(' ❌ Access point constant wrong'); + _write(' ❌ Access point constant wrong'); return false; } if (DeviceTypes.networkSwitch != 'switch') { - print(' ❌ Switch constant wrong'); + _write(' ❌ Switch constant wrong'); return false; } if (DeviceTypes.ont != 'ont') { - print(' ❌ ONT constant wrong'); + _write(' ❌ ONT constant wrong'); return false; } if (DeviceTypes.wlanController != 'wlan_controller') { - print(' ❌ WLAN controller constant wrong'); + _write(' ❌ WLAN controller constant wrong'); return false; } // Test validation works try { DeviceTypes.validateDeviceType('invalid'); - print(' ❌ Should throw for invalid type'); + _write(' ❌ Should throw for invalid type'); return false; } on ArgumentError catch (_) { // Expected } - print(' βœ… Device type constants work correctly'); + _write(' βœ… Device type constants work correctly'); return true; } catch (e) { - print(' ❌ Exception in constants test: $e'); + _write(' ❌ Exception in constants test: $e'); return false; } } /// Test end-to-end device filtering simulation bool testEndToEndFiltering() { - print(' πŸ” Testing End-to-End Device Filtering...'); + _write(' πŸ” Testing End-to-End Device Filtering...'); try { // Simulate the entire flow: API data -> View Model -> UI counts @@ -167,7 +170,7 @@ bool testEndToEndFiltering() { final room101Devices = viewModel.filterDevicesForRoom(devices, 101); if (room101Devices.length != 3) { - print(' ❌ Wrong device count for room 101: ${room101Devices.length}'); + _write(' ❌ Wrong device count for room 101: ${room101Devices.length}'); return false; } @@ -175,17 +178,17 @@ bool testEndToEndFiltering() { final stats = viewModel.calculateStats(room101Devices); if (stats['accessPoints'] != 1) { - print(' ❌ Wrong access point count: ${stats['accessPoints']}'); + _write(' ❌ Wrong access point count: ${stats['accessPoints']}'); return false; } if (stats['switches'] != 1) { - print(' ❌ Wrong switch count: ${stats['switches']}'); + _write(' ❌ Wrong switch count: ${stats['switches']}'); return false; } if (stats['onts'] != 1) { - print(' ❌ Wrong ONT count: ${stats['onts']}'); + _write(' ❌ Wrong ONT count: ${stats['onts']}'); return false; } @@ -193,23 +196,23 @@ bool testEndToEndFiltering() { for (final device in room101Devices) { final iconId = getIconForDevice(device.type); if (iconId == 'device_hub') { - print(' ❌ Device ${device.type} got default icon - fix not working'); + _write(' ❌ Device ${device.type} got default icon - fix not working'); return false; } } - print(' βœ… End-to-end filtering works correctly'); + _write(' βœ… End-to-end filtering works correctly'); return true; } catch (e) { - print(' ❌ Exception in end-to-end test: $e'); + _write(' ❌ Exception in end-to-end test: $e'); return false; } } /// Test view model error handling bool testViewModelErrorHandling() { - print(' πŸ” Testing View Model Error Handling...'); + _write(' πŸ” Testing View Model Error Handling...'); try { final viewModel = MockRoomDeviceViewModel(); @@ -217,10 +220,10 @@ bool testViewModelErrorHandling() { // Test invalid room ID try { viewModel.validateRoomId('invalid-room'); - print(' ❌ Should throw for invalid room ID'); + _write(' ❌ Should throw for invalid room ID'); return false; } on ArgumentError catch (_) { - print(' βœ… Invalid room ID correctly throws ArgumentError'); + _write(' βœ… Invalid room ID correctly throws ArgumentError'); } // Test invalid device type @@ -233,23 +236,23 @@ bool testViewModelErrorHandling() { try { viewModel.calculateStats([invalidDevice]); - print(' ❌ Should throw for invalid device type'); + _write(' ❌ Should throw for invalid device type'); return false; } on ArgumentError catch (_) { - print(' βœ… Invalid device type correctly throws ArgumentError'); + _write(' βœ… Invalid device type correctly throws ArgumentError'); } return true; } catch (e) { - print(' ❌ Exception in error handling test: $e'); + _write(' ❌ Exception in error handling test: $e'); return false; } } /// Test UI crash prevention bool testUICrashPrevention() { - print(' πŸ” Testing UI Crash Prevention...'); + _write(' πŸ” Testing UI Crash Prevention...'); try { // Simulate the FIXED UI logic vs the BROKEN UI logic @@ -263,7 +266,7 @@ bool testUICrashPrevention() { final fixedSwitches = testDevices.where((d) => d.type == DeviceTypes.networkSwitch).length; if (fixedAccessPoints != 1 || fixedSwitches != 1) { - print(' ❌ Fixed logic not working correctly'); + _write(' ❌ Fixed logic not working correctly'); return false; } @@ -272,51 +275,51 @@ bool testUICrashPrevention() { final brokenSwitches = testDevices.where((d) => d.type == 'Switch').length; if (brokenAccessPoints != 0 || brokenSwitches != 0) { - print(' ❌ Broken logic comparison failed'); + _write(' ❌ Broken logic comparison failed'); return false; } - print(' βœ… UI crash prevention works - device counts are now correct'); + _write(' βœ… UI crash prevention works - device counts are now correct'); return true; } catch (e) { - print(' ❌ Exception in UI crash test: $e'); + _write(' ❌ Exception in UI crash test: $e'); return false; } } /// Test architecture compliance bool testArchitectureCompliance() { - print(' πŸ” Testing Architecture Compliance...'); + _write(' πŸ” Testing Architecture Compliance...'); try { - print(' βœ… Clean Architecture:'); - print(' - Domain layer defines DeviceTypes constants'); - print(' - No dependencies from domain to other layers'); - print(' - Business logic separated from UI'); + _write(' βœ… Clean Architecture:'); + _write(' - Domain layer defines DeviceTypes constants'); + _write(' - No dependencies from domain to other layers'); + _write(' - Business logic separated from UI'); - print(' βœ… MVVM Pattern:'); - print(' - RoomDeviceViewModel handles business logic'); - print(' - UI components are presentational only'); - print(' - State management through Riverpod providers'); + _write(' βœ… MVVM Pattern:'); + _write(' - RoomDeviceViewModel handles business logic'); + _write(' - UI components are presentational only'); + _write(' - State management through Riverpod providers'); - print(' βœ… Dependency Injection:'); - print(' - All providers use Riverpod @riverpod annotation'); - print(' - Dependencies injected through ref parameter'); + _write(' βœ… Dependency Injection:'); + _write(' - All providers use Riverpod @riverpod annotation'); + _write(' - Dependencies injected through ref parameter'); - print(' βœ… Error Handling:'); - print(' - ArgumentErrors thrown for invalid data (as requested)'); - print(' - StateErrors for unexpected conditions'); - print(' - Proper error propagation to UI'); + _write(' βœ… Error Handling:'); + _write(' - ArgumentErrors thrown for invalid data (as requested)'); + _write(' - StateErrors for unexpected conditions'); + _write(' - Proper error propagation to UI'); - print(' βœ… Immutable State:'); - print(' - Freezed classes for state objects'); - print(' - copyWith for state updates'); + _write(' βœ… Immutable State:'); + _write(' - Freezed classes for state objects'); + _write(' - copyWith for state updates'); return true; } catch (e) { - print(' ❌ Exception in architecture test: $e'); + _write(' ❌ Exception in architecture test: $e'); return false; } } @@ -341,17 +344,17 @@ String getIconForDevice(String deviceType) { /// Mock classes class MockDevice { - final String id; - final String name; - final String type; - final int pmsRoomId; - MockDevice({ required this.id, required this.name, required this.type, required this.pmsRoomId, }); + + final String id; + final String name; + final String type; + final int pmsRoomId; } class MockRoomDeviceViewModel { @@ -413,4 +416,4 @@ class DeviceTypes { throw ArgumentError('Invalid device type: "$deviceType"'); } } -} \ No newline at end of file +} diff --git a/scripts/diagnose_cache_type_error.dart b/scripts/diagnose_cache_type_error.dart index d5f9f28..1796585 100644 --- a/scripts/diagnose_cache_type_error.dart +++ b/scripts/diagnose_cache_type_error.dart @@ -1,15 +1,19 @@ #!/usr/bin/env dart // Diagnostic script for the CacheEntry type mismatch error -// Error: Instance of 'CacheEntry?>': type 'CacheEntry?>' +// Error: Instance of 'CacheEntry?>': type 'CacheEntry?>' // is not a subtype of type 'CacheEntry>?' +import 'dart:io'; + +void _write([String? message]) => stdout.writeln(message ?? ''); + void main() { - print('=' * 80); - print('CACHE TYPE ERROR DIAGNOSIS'); - print('=' * 80); - print(''); - + _write('=' * 80); + _write('CACHE TYPE ERROR DIAGNOSIS'); + _write('=' * 80); + _write(); + analyzeProblem(); identifyRootCause(); demonstrateFix(); @@ -18,145 +22,150 @@ void main() { } void analyzeProblem() { - print('1. ERROR ANALYSIS'); - print('-' * 40); - - print('Error Message:'); - print(' "Instance of CacheEntry?>:'); - print(' type CacheEntry?> is not a subtype of CacheEntry>?"'); - print(''); - - print('Location: cache_manager.dart line 33'); - print(' final entry = _cache[key] as CacheEntry?;'); - print(''); - - print('The Problem:'); - print(' - _cache stores CacheEntry'); - print(' - When storing CacheEntry?> (nullable list)'); - print(' - But trying to cast to CacheEntry> (non-nullable list)'); - print(' - The cast fails at runtime because of type variance'); - print(''); - - print('Call Stack:'); - print(' 1. RoomDeviceNotifier.refresh() calls'); - print(' 2. devicesNotifierProvider.notifier.userRefresh() calls'); - print(' 3. _cacheManager.get>() with nullable return'); - print(' 4. CRASH: Type cast fails on line 33'); + _write('1. ERROR ANALYSIS'); + _write('-' * 40); + + _write('Error Message:'); + _write(' "Instance of CacheEntry?>:'); + _write(' type CacheEntry?> is not a subtype of CacheEntry>?"'); + _write(); + + _write('Location: cache_manager.dart line 33'); + _write(' final entry = _cache[key] as CacheEntry?;'); + _write(); + + _write('The Problem:'); + _write(' - _cache stores CacheEntry'); + _write(' - When storing CacheEntry?> (nullable list)'); + _write(' - But trying to cast to CacheEntry> (non-nullable list)'); + _write(' - The cast fails at runtime because of type variance'); + _write(); + + _write('Call Stack:'); + _write(' 1. RoomDeviceNotifier.refresh() calls'); + _write(' 2. devicesNotifierProvider.notifier.userRefresh() calls'); + _write(' 3. _cacheManager.get>() with nullable return'); + _write(' 4. CRASH: Type cast fails on line 33'); } void identifyRootCause() { - print('\n2. ROOT CAUSE IDENTIFICATION'); - print('-' * 40); - - print('The Issue:'); - print(' CacheManager line 33 uses unsafe cast:'); - print(' final entry = _cache[key] as CacheEntry?;'); - print(''); - - print('Why it fails:'); - print(' 1. _cache is Map>'); - print(' 2. Storing CacheEntry?> (with nullable inner type)'); - print(' 3. Later trying to get as CacheEntry> (non-nullable)'); - print(' 4. Dart\'s type system prevents this cast (variance issue)'); - print(''); - - print('Specific scenario:'); - print(' - First call: get?>() stores CacheEntry?>'); - print(' - Second call: get>() tries to cast - FAILS!'); - print(' - OR: Background refresh stores nullable, foreground expects non-nullable'); - print(''); - - print('Why it spins forever:'); - print(' - userRefresh() throws exception'); - print(' - UI shows loading state'); - print(' - Exception prevents state update'); - print(' - Loading spinner never stops'); + _write(); + _write('2. ROOT CAUSE IDENTIFICATION'); + _write('-' * 40); + + _write('The Issue:'); + _write(' CacheManager line 33 uses unsafe cast:'); + _write(' final entry = _cache[key] as CacheEntry?;'); + _write(); + + _write('Why it fails:'); + _write(' 1. _cache is Map>'); + _write(' 2. Storing CacheEntry?> (with nullable inner type)'); + _write(' 3. Later trying to get as CacheEntry> (non-nullable)'); + _write(" 4. Dart's type system prevents this cast (variance issue)"); + _write(); + + _write('Specific scenario:'); + _write(' - First call: get?>() stores CacheEntry?>'); + _write(' - Second call: get>() tries to cast - FAILS!'); + _write(' - OR: Background refresh stores nullable, foreground expects non-nullable'); + _write(); + + _write('Why it spins forever:'); + _write(' - userRefresh() throws exception'); + _write(' - UI shows loading state'); + _write(' - Exception prevents state update'); + _write(' - Loading spinner never stops'); } void demonstrateFix() { - print('\n3. SOLUTION DEMONSTRATION'); - print('-' * 40); - - print('Current BROKEN code (cache_manager.dart line 33):'); - print(' final entry = _cache[key] as CacheEntry?;'); - print(''); - - print('FIXED code (type-safe):'); - print(' final dynamic cachedEntry = _cache[key];'); - print(' if (cachedEntry == null) {'); - print(' return await _fetchAndCache(key, fetcher, ttl);'); - print(' }'); - print(' '); - print(' // Safe cast with runtime type check'); - print(' if (cachedEntry is! CacheEntry) {'); - print(' // Type mismatch - invalidate and refetch'); - print(' _cache.remove(key);'); - print(' return await _fetchAndCache(key, fetcher, ttl);'); - print(' }'); - print(' '); - print(' final entry = cachedEntry as CacheEntry;'); - print(''); - - print('Why this works:'); - print(' βœ… Uses runtime type check (is!) instead of cast'); - print(' βœ… Handles type mismatches gracefully'); - print(' βœ… Invalidates cache on type change'); - print(' βœ… No runtime exceptions'); + _write(); + _write('3. SOLUTION DEMONSTRATION'); + _write('-' * 40); + + _write('Current BROKEN code (cache_manager.dart line 33):'); + _write(' final entry = _cache[key] as CacheEntry?;'); + _write(); + + _write('FIXED code (type-safe):'); + _write(' final dynamic cachedEntry = _cache[key];'); + _write(' if (cachedEntry == null) {'); + _write(' return await _fetchAndCache(key, fetcher, ttl);'); + _write(' }'); + _write(); + _write(' // Safe cast with runtime type check'); + _write(' if (cachedEntry is! CacheEntry) {'); + _write(' // Type mismatch - invalidate and refetch'); + _write(' _cache.remove(key);'); + _write(' return await _fetchAndCache(key, fetcher, ttl);'); + _write(' }'); + _write(); + _write(' final entry = cachedEntry as CacheEntry;'); + _write(); + + _write('Why this works:'); + _write(' βœ… Uses runtime type check (is!) instead of cast'); + _write(' βœ… Handles type mismatches gracefully'); + _write(' βœ… Invalidates cache on type change'); + _write(' βœ… No runtime exceptions'); } void verifyArchitecture() { - print('\n4. ARCHITECTURE COMPLIANCE'); - print('-' * 40); - - print('Clean Architecture:'); - print(' βœ… Fix is in Infrastructure layer (CacheManager)'); - print(' βœ… No changes to Domain or Presentation layers'); - print(' βœ… Maintains separation of concerns'); - print(''); - - print('MVVM Pattern:'); - print(' βœ… ViewModels (RoomDeviceNotifier) unchanged'); - print(' βœ… Error handling stays in infrastructure'); - print(' βœ… UI remains decoupled'); - print(''); - - print('Dependency Injection:'); - print(' βœ… CacheManager provided via Riverpod'); - print(' βœ… No direct instantiation needed'); - print(' βœ… Provider pattern maintained'); - print(''); - - print('Null Safety:'); - print(' βœ… Handles nullable and non-nullable types'); - print(' βœ… No force unwrapping'); - print(' βœ… Type-safe runtime checks'); - print(''); - - print('Error Handling:'); - print(' βœ… Graceful degradation on type mismatch'); - print(' βœ… No crashes or exceptions'); - print(' βœ… Automatic cache invalidation'); + _write(); + _write('4. ARCHITECTURE COMPLIANCE'); + _write('-' * 40); + + _write('Clean Architecture:'); + _write(' βœ… Fix is in Infrastructure layer (CacheManager)'); + _write(' βœ… No changes to Domain or Presentation layers'); + _write(' βœ… Maintains separation of concerns'); + _write(); + + _write('MVVM Pattern:'); + _write(' βœ… ViewModels (RoomDeviceNotifier) unchanged'); + _write(' βœ… Error handling stays in infrastructure'); + _write(' βœ… UI remains decoupled'); + _write(); + + _write('Dependency Injection:'); + _write(' βœ… CacheManager provided via Riverpod'); + _write(' βœ… No direct instantiation needed'); + _write(' βœ… Provider pattern maintained'); + _write(); + + _write('Null Safety:'); + _write(' βœ… Handles nullable and non-nullable types'); + _write(' βœ… No force unwrapping'); + _write(' βœ… Type-safe runtime checks'); + _write(); + + _write('Error Handling:'); + _write(' βœ… Graceful degradation on type mismatch'); + _write(' βœ… No crashes or exceptions'); + _write(' βœ… Automatic cache invalidation'); } void printSummary() { - print('\n' + '=' * 80); - print('DIAGNOSIS SUMMARY'); - print('=' * 80); - - print('\nPROBLEM:'); - print(' CacheManager uses unsafe type cast causing runtime exception'); - print(' This prevents devices from loading in room detail view'); - print(''); - - print('SOLUTION:'); - print(' Replace unsafe cast with runtime type check'); - print(' Invalidate cache on type mismatch'); - print(' Gracefully handle type variance'); - print(''); - - print('IMPACT:'); - print(' - Devices tab will load correctly'); - print(' - No more infinite spinner'); - print(' - Type-safe caching'); - print(' - Better error resilience'); -} \ No newline at end of file + _write(); + _write('=' * 80); + _write('DIAGNOSIS SUMMARY'); + _write('=' * 80); + + _write(); + _write('PROBLEM:'); + _write(' CacheManager uses unsafe type cast causing runtime exception'); + _write(' This prevents devices from loading in room detail view'); + _write(); + + _write('SOLUTION:'); + _write(' Replace unsafe cast with runtime type check'); + _write(' Invalidate cache on type mismatch'); + _write(' Gracefully handle type variance'); + _write(); + + _write('IMPACT:'); + _write(' - Devices tab will load correctly'); + _write(' - No more infinite spinner'); + _write(' - Type-safe caching'); + _write(' - Better error resilience'); +} diff --git a/scripts/diagnose_device_entity_issues.dart b/scripts/diagnose_device_entity_issues.dart index 4099981..009d837 100644 --- a/scripts/diagnose_device_entity_issues.dart +++ b/scripts/diagnose_device_entity_issues.dart @@ -1,41 +1,47 @@ #!/usr/bin/env dart -/// Diagnostic script to test Device entity field access patterns -/// Based on room_detail_screen.dart line 479-485 and Device entity structure +// Diagnostic script to test Device entity field access patterns +// Based on room_detail_screen.dart line 479-485 and Device entity structure import 'dart:io'; -void main() async { - print('=== Diagnosing Device Entity Field Access ==='); - print('Date: ${DateTime.now()}'); - print(''); +void _write([String? message]) => stdout.writeln(message ?? ''); + +Future main() async { + _write('=== Diagnosing Device Entity Field Access ==='); + _write('Date: ${DateTime.now()}'); + _write(); await testDeviceFieldAccess(); } /// Test field access patterns that might cause crashes Future testDeviceFieldAccess() async { - print('πŸ” Testing Device entity field access...'); - + _write('πŸ” Testing Device entity field access...'); + // Step 1: Test the exact field access pattern from room_detail_screen.dart - print('\n1. Testing room detail screen device access pattern:'); + _write(); + _write('1. Testing room detail screen device access pattern:'); await testRoomDetailDeviceAccess(); - + // Step 2: Test field name mismatches from API docs - print('\n2. Testing API field name mismatches:'); + _write(); + _write('2. Testing API field name mismatches:'); await testApiFieldMismatches(); - + // Step 3: Test null safety issues - print('\n3. Testing null safety issues:'); + _write(); + _write('3. Testing null safety issues:'); await testNullSafetyIssues(); - print('\n=== Analysis Complete ==='); + _write(); + _write('=== Analysis Complete ==='); } /// Test the exact pattern used in room_detail_screen.dart lines 479-485 Future testRoomDetailDeviceAccess() async { - print(' Testing exact field access from _DevicesTab...'); - + _write(' Testing exact field access from _DevicesTab...'); + // This mimics the exact code from line 479-485 in room_detail_screen.dart: // device: { // 'id': device.id, @@ -44,7 +50,7 @@ Future testRoomDetailDeviceAccess() async { // 'status': device.status, // 'ipAddress': device.ipAddress, // }, - + final mockDevice = MockDevice( id: '123', name: 'Test-AP-1', @@ -53,7 +59,7 @@ Future testRoomDetailDeviceAccess() async { ipAddress: '192.168.1.100', pmsRoomId: 101, ); - + try { // Test the exact map creation from the screen final deviceMap = { @@ -61,62 +67,84 @@ Future testRoomDetailDeviceAccess() async { 'name': mockDevice.name, 'type': mockDevice.type, 'status': mockDevice.status, - 'ipAddress': mockDevice.ipAddress, // ❌ POTENTIAL ISSUE: This is 'ipAddress' + 'ipAddress': mockDevice.ipAddress, // ❌ POTENTIAL ISSUE: This is 'ipAddress' }; - - print(' βœ… Successfully created device map:'); - print(' ID: ${deviceMap['id']}'); - print(' Name: ${deviceMap['name']}'); - print(' Type: ${deviceMap['type']}'); - print(' Status: ${deviceMap['status']}'); - print(' IP Address: ${deviceMap['ipAddress']}'); - - } catch (e) { - print(' ❌ ERROR creating device map: $e'); + + _write(' βœ… Successfully created device map:'); + _write(' ID: ${deviceMap['id']}'); + _write(' Name: ${deviceMap['name']}'); + _write(' Type: ${deviceMap['type']}'); + _write(' Status: ${deviceMap['status']}'); + _write(' IP Address: ${deviceMap['ipAddress']}'); + } on Object catch (e) { + _write(' ❌ ERROR creating device map: $e'); } } /// Test field name mismatches based on API docs and Device entity Future testApiFieldMismatches() async { - print(' Testing field name inconsistencies...'); - + _write(' Testing field name inconsistencies...'); + // From API docs (api_fields_reference.md): // - Access Points use 'ip' field - // - Switches use 'host' field + // - Switches use 'host' field // - Access Points/ONTs use 'mac' field // - Switches store MAC in 'scratch' field - + // But Device entity uses: // - ipAddress (String?) // - macAddress (String?) - - print(' API vs Entity field mapping:'); - print(' API Access Point \'ip\' -> Entity \'ipAddress\' βœ…'); - print(' API Switch \'host\' -> Entity \'ipAddress\' ❓ (mapping needed)'); - print(' API \'mac\' -> Entity \'macAddress\' βœ…'); - print(' API Switch \'scratch\' -> Entity \'macAddress\' ❓ (mapping needed)'); - + + _write(' API vs Entity field mapping:'); + _write(" API Access Point 'ip' -> Entity 'ipAddress' βœ…"); + _write(" API Switch 'host' -> Entity 'ipAddress' ❓ (mapping needed)"); + _write(" API 'mac' -> Entity 'macAddress' βœ…"); + _write(" API Switch 'scratch' -> Entity 'macAddress' ❓ (mapping needed)"); + // The issue might be that the field mapping is handled in data layer // but the UI assumes all devices have the same field names - - print(' ⚠️ POTENTIAL CRASH CAUSE: Field mapping inconsistencies'); + + _write(' ⚠️ POTENTIAL CRASH CAUSE: Field mapping inconsistencies'); } /// Test null safety patterns Future testNullSafetyIssues() async { - print(' Testing null safety patterns...'); - + _write(' Testing null safety patterns...'); + // Test with null values that might come from API final testCases = [ - MockDevice(id: '1', name: 'Test-1', type: 'Access Point', status: 'online', ipAddress: null, pmsRoomId: 101), - MockDevice(id: '2', name: 'Test-2', type: 'Switch', status: 'offline', ipAddress: '', pmsRoomId: null), - MockDevice(id: '3', name: '', type: 'ont', status: 'warning', ipAddress: '192.168.1.1', pmsRoomId: 101), + MockDevice( + id: '1', + name: 'Test-1', + type: 'Access Point', + status: 'online', + ipAddress: null, + pmsRoomId: 101, + ), + MockDevice( + id: '2', + name: 'Test-2', + type: 'Switch', + status: 'offline', + ipAddress: '', + pmsRoomId: null, + ), + MockDevice( + id: '3', + name: '', + type: 'ont', + status: 'warning', + ipAddress: '192.168.1.1', + pmsRoomId: 101, + ), ]; - + for (final device in testCases) { try { - print(' Testing device: ${device.name.isEmpty ? "(EMPTY NAME)" : device.name}'); - + _write( + ' Testing device: ${device.name.isEmpty ? "(EMPTY NAME)" : device.name}', + ); + // Test the map creation that could crash final deviceMap = { 'id': device.id, @@ -124,44 +152,52 @@ Future testNullSafetyIssues() async { 'type': device.type, 'status': device.status, 'ipAddress': device.ipAddress, + 'pmsRoomId': device.pmsRoomId, }; - + + // Use the map so the analyzer recognizes it + _write( + ' Map snapshot -> id:${deviceMap['id']} type:${deviceMap['type']}', + ); + // Test the _DeviceListItem widget logic (lines 663-665) - final statusColor = device.status == 'online' ? 'GREEN' : - device.status == 'offline' ? 'RED' : - device.status == 'warning' ? 'ORANGE' : 'GREY'; - - print(' Status: ${device.status} -> Color: $statusColor'); - + final statusColor = device.status == 'online' + ? 'GREEN' + : device.status == 'offline' + ? 'RED' + : device.status == 'warning' + ? 'ORANGE' + : 'GREY'; + + _write(' Status: ${device.status} -> Color: $statusColor'); + // Test the icon selection logic (lines 679-683) - final iconType = device.type == 'Access Point' ? 'WIFI' : - device.type == 'Switch' ? 'HUB' : - device.type == 'ont' ? 'FIBER' : 'DEFAULT'; - - print(' Type: ${device.type} -> Icon: $iconType'); - + final iconType = device.type == 'Access Point' + ? 'WIFI' + : device.type == 'Switch' + ? 'HUB' + : device.type == 'ont' + ? 'FIBER' + : 'DEFAULT'; + + _write(' Type: ${device.type} -> Icon: $iconType'); + + _write(' Room ID: ${device.pmsRoomId ?? "NULL"}'); + // Test potential null access if (device.ipAddress != null && device.ipAddress!.isNotEmpty) { - print(' IP: ${device.ipAddress}'); + _write(' IP: ${device.ipAddress}'); } else { - print(' IP: NULL/EMPTY ⚠️'); + _write(' IP: NULL/EMPTY ⚠️'); } - - } catch (e) { - print(' ❌ ERROR processing device: $e'); + } on Object catch (e) { + _write(' ❌ ERROR processing device: $e'); } } } /// Mock device for testing class MockDevice { - final String id; - final String name; - final String type; - final String status; - final String? ipAddress; - final int? pmsRoomId; - MockDevice({ required this.id, required this.name, @@ -170,4 +206,11 @@ class MockDevice { this.ipAddress, this.pmsRoomId, }); -} \ No newline at end of file + + final String id; + final String name; + final String type; + final String status; + final String? ipAddress; + final int? pmsRoomId; +} diff --git a/scripts/diagnose_devices_tab_crash.dart b/scripts/diagnose_devices_tab_crash.dart deleted file mode 100644 index 0b73bec..0000000 --- a/scripts/diagnose_devices_tab_crash.dart +++ /dev/null @@ -1,189 +0,0 @@ -#!/usr/bin/env dart - -/// Diagnostic script to test the devices tab crash in room detail view -/// This script mimics the exact code path that the DevicesTab widget follows - -import 'dart:io'; - -void main() async { - print('=== Diagnosing Devices Tab Crash ==='); - print('Date: ${DateTime.now()}'); - print(''); - - // Simulate the crash scenario based on the room detail screen code - await testDevicesTabLogic(); -} - -/// Test the devices tab logic that might be crashing -Future testDevicesTabLogic() async { - print('πŸ” Testing DevicesTab logic...'); - - // Step 1: Test room ID parsing (line 406-411 in room_detail_screen.dart) - print('\n1. Testing room ID parsing:'); - await testRoomIdParsing(); - - // Step 2: Test device filtering logic (line 413-416) - print('\n2. Testing device filtering logic:'); - await testDeviceFiltering(); - - // Step 3: Test device type counting (line 448-465) - print('\n3. Testing device type counting:'); - await testDeviceTypeCounting(); - - // Step 4: Test device list item creation (line 472-499) - print('\n4. Testing device list item creation:'); - await testDeviceListItemCreation(); - - print('\n=== Analysis Complete ==='); -} - -/// Test room ID parsing logic from line 406-411 -Future testRoomIdParsing() async { - // Test cases that might crash - final testCases = [ - '1', // Valid numeric - '101', // Valid numeric - 'abc', // Invalid - should return null - '', // Empty string - 'null', // String "null" - ]; - - for (final roomId in testCases) { - try { - final roomIdInt = int.tryParse(roomId); - print(' Room ID "$roomId" -> $roomIdInt ${roomIdInt == null ? "(INVALID)" : "(VALID)"}'); - - if (roomIdInt == null) { - print(' ⚠️ This would trigger "Invalid room ID" error in UI'); - } - } catch (e) { - print(' ❌ ERROR parsing room ID "$roomId": $e'); - } - } -} - -/// Test device filtering logic from line 413-416 -Future testDeviceFiltering() async { - // Mock device data similar to what the app might receive - final mockDevices = [ - MockDevice(id: '1', name: 'AP-1', type: 'Access Point', status: 'online', pmsRoomId: 101), - MockDevice(id: '2', name: 'SW-1', type: 'Switch', status: 'offline', pmsRoomId: 102), - MockDevice(id: '3', name: 'ONT-1', type: 'ont', status: 'online', pmsRoomId: 101), - MockDevice(id: '4', name: 'AP-2', type: 'Access Point', status: 'warning', pmsRoomId: null), // null room - ]; - - final testRoomId = 101; - - try { - final roomDevices = mockDevices.where((device) { - return device.pmsRoomId == testRoomId; - }).toList(); - - print(' Total devices: ${mockDevices.length}'); - print(' Devices for room $testRoomId: ${roomDevices.length}'); - - for (final device in roomDevices) { - print(' - ${device.name} (${device.type}) - ${device.status}'); - } - - if (roomDevices.isEmpty) { - print(' ⚠️ Empty device list would show EmptyState widget'); - } - - } catch (e) { - print(' ❌ ERROR in device filtering: $e'); - } -} - -/// Test device type counting from line 448-465 -Future testDeviceTypeCounting() async { - final mockDevices = [ - MockDevice(id: '1', name: 'AP-1', type: 'Access Point', status: 'online', pmsRoomId: 101), - MockDevice(id: '2', name: 'SW-1', type: 'Switch', status: 'offline', pmsRoomId: 101), - MockDevice(id: '3', name: 'ONT-1', type: 'ont', status: 'online', pmsRoomId: 101), - MockDevice(id: '4', name: 'AP-2', type: 'Access Point', status: 'warning', pmsRoomId: 101), - ]; - - try { - // Test the exact device type filtering from the code - final accessPointCount = mockDevices.where((d) => d.type == 'Access Point').length; - final switchCount = mockDevices.where((d) => d.type == 'Switch').length; - final ontCount = mockDevices.where((d) => d.type == 'ont').length; // lowercase! - - print(' Access Points: $accessPointCount'); - print(' Switches: $switchCount'); - print(' ONTs: $ontCount'); - print(' Total: ${mockDevices.length}'); - - // Test potential issues - if (accessPointCount + switchCount + ontCount != mockDevices.length) { - print(' ⚠️ Device type counts don\'t match total - possible type mismatch!'); - } - - } catch (e) { - print(' ❌ ERROR in device type counting: $e'); - } -} - -/// Test device list item creation from line 472-499 -Future testDeviceListItemCreation() async { - final mockDevices = [ - MockDevice(id: '1', name: 'AP-1', type: 'Access Point', status: 'online', pmsRoomId: 101, ipAddress: '192.168.1.1'), - MockDevice(id: '2', name: 'SW-1', type: 'Switch', status: 'offline', pmsRoomId: 101, ipAddress: null), // null IP - MockDevice(id: '3', name: 'ONT-1', type: 'ont', status: 'online', pmsRoomId: 101, ipAddress: ''), // empty IP - ]; - - try { - for (int index = 0; index < mockDevices.length; index++) { - final device = mockDevices[index]; - - // This is the exact data structure created in lines 479-485 - final deviceMap = { - 'id': device.id, - 'name': device.name, - 'type': device.type, - 'status': device.status, - 'ipAddress': device.ipAddress, - }; - - print(' Device $index: ${deviceMap['name']}'); - print(' - ID: ${deviceMap['id']}'); - print(' - Type: ${deviceMap['type']}'); - print(' - Status: ${deviceMap['status']}'); - print(' - IP: ${deviceMap['ipAddress']} ${deviceMap['ipAddress'] == null ? "(NULL)" : deviceMap['ipAddress'] == '' ? "(EMPTY)" : ""}'); - - // Test potential null/empty issues - if (deviceMap['name'] == null || deviceMap['name'] == '') { - print(' ⚠️ NULL/empty name could cause UI issues'); - } - if (deviceMap['type'] == null) { - print(' ⚠️ NULL type could cause icon selection issues'); - } - if (deviceMap['status'] == null) { - print(' ⚠️ NULL status could cause color selection issues'); - } - } - - } catch (e) { - print(' ❌ ERROR in device list item creation: $e'); - } -} - -/// Mock device class for testing -class MockDevice { - final String id; - final String name; - final String type; - final String status; - final int? pmsRoomId; - final String? ipAddress; - - MockDevice({ - required this.id, - required this.name, - required this.type, - required this.status, - required this.pmsRoomId, - this.ipAddress, - }); -} \ No newline at end of file diff --git a/scripts/diagnose_devices_view_crash.dart b/scripts/diagnose_devices_view_crash.dart deleted file mode 100644 index c03141f..0000000 --- a/scripts/diagnose_devices_view_crash.dart +++ /dev/null @@ -1,162 +0,0 @@ -#!/usr/bin/env dart - -// Diagnostic script to identify the root cause of devices view crash -// This script analyzes the data flow and potential crash points - -import 'dart:convert'; - -void main() { - print('=' * 80); - print('DEVICES VIEW CRASH DIAGNOSIS'); - print('=' * 80); - - analyzeDataFlow(); - checkProviderDependencies(); - identifyCrashPoints(); - analyzePotentialIssues(); - proposeSolutions(); -} - -void analyzeDataFlow() { - print('\n1. DATA FLOW ANALYSIS'); - print('-' * 40); - - print('Expected flow:'); - print(' 1. DevicesScreen -> ref.watch(devicesNotifierProvider)'); - print(' 2. DevicesNotifier.build() called'); - print(' 3. CacheManager.get() with fetcher'); - print(' 4. getDevicesProvider called with GetDevicesParams'); - print(' 5. DeviceRemoteDataSource.getDevices() with field selection'); - print(' 6. Parallel fetch: access_points, media_converters, switch_devices, wlan_devices'); - print(' 7. Each endpoint fetched with page_size=0 and field selection'); - print(' 8. Results mapped to DeviceModel with prefixed IDs'); - print(' 9. DeviceModel.toEntity() converts to Device entity'); - print(' 10. AsyncValue.data(devices) returned to UI'); - - print('\nPotential failure points:'); - print(' ❌ Missing generated files (*.g.dart)'); - print(' ❌ Provider initialization issues'); - print(' ❌ JSON parsing errors in DeviceModel.fromJson()'); - print(' ❌ Null reference errors in data transformation'); - print(' ❌ Widget rebuild issues with AsyncValue'); -} - -void checkProviderDependencies() { - print('\n2. PROVIDER DEPENDENCIES CHECK'); - print('-' * 40); - - print('Provider chain:'); - print(' devicesNotifierProvider'); - print(' β”œβ”€β”€ adaptiveRefreshManagerProvider'); - print(' β”œβ”€β”€ cacheManagerProvider'); - print(' └── getDevicesProvider'); - print(' └── deviceRepositoryProvider'); - print(' └── deviceRemoteDataSourceProvider'); - print(' └── apiServiceProvider'); - - print('\nUI Provider dependencies:'); - print(' DevicesScreen watches:'); - print(' β”œβ”€β”€ devicesNotifierProvider'); - print(' β”œβ”€β”€ filteredDevicesListProvider'); - print(' β”‚ β”œβ”€β”€ devicesNotifierProvider'); - print(' β”‚ └── deviceUIStateNotifierProvider'); - print(' β”œβ”€β”€ mockDataStateProvider'); - print(' β”‚ └── devicesNotifierProvider'); - print(' └── deviceUIStateNotifierProvider'); - - print('\n⚠️ CRITICAL: Multiple providers watching devicesNotifierProvider'); - print(' This could cause infinite rebuild loops if not handled properly'); -} - -void identifyCrashPoints() { - print('\n3. IDENTIFIED CRASH POINTS'); - print('-' * 40); - - print('High Risk Areas:'); - - print('\n3.1 MISSING GENERATED FILES:'); - print(' ❌ devices_provider.g.dart - NOT FOUND'); - print(' ❌ device_ui_state_provider.g.dart - NOT FOUND'); - print(' Impact: Providers will not compile, causing runtime crashes'); - - print('\n3.2 JSON PARSING ISSUES:'); - print(' Location: device_remote_data_source.dart lines 274-339'); - print(' Issue: Complex JSON transformation with potential null fields'); - print(' Example: deviceMap["pms_room"] might be null or wrong type'); - - print('\n3.3 PROVIDER INITIALIZATION:'); - print(' Location: devices_provider.dart line 22-26'); - print(' Issue: build() method tries to initialize managers and start refresh'); - print(' Risk: Circular dependency or initialization order issues'); - - print('\n3.4 WIDGET REBUILDS:'); - print(' Location: devices_screen.dart line 96-101'); - print(' Issue: Multiple nested Consumer widgets watching same provider'); - print(' Risk: Excessive rebuilds causing performance issues or crashes'); - - print('\n3.5 TYPE FILTERING:'); - print(' Location: devices_screen.dart lines 166-168'); - print(' Issue: Filtering by device.type == "access_point" etc.'); - print(' Risk: Type string mismatch (e.g., "accessPoint" vs "access_point")'); -} - -void analyzePotentialIssues() { - print('\n4. SPECIFIC ISSUES ANALYSIS'); - print('-' * 40); - - print('Issue #1: Generated Files Missing'); - print(' Symptom: Compilation errors, providers not working'); - print(' Evidence: *.g.dart files not found in providers directory'); - print(' Solution: Run build_runner to generate files'); - - print('\nIssue #2: Async Initialization in build()'); - print(' Symptom: Provider throws during initialization'); - print(' Evidence: DevicesNotifier.build() is async and starts background tasks'); - print(' Solution: Move background task initialization to first read'); - - print('\nIssue #3: Field Selection Not Working'); - print(' Symptom: Large payloads causing memory/performance issues'); - print(' Evidence: DeviceFieldSets.listFields might not be applied correctly'); - print(' Solution: Verify API actually supports "only" parameter'); - - print('\nIssue #4: ID Collision Prevention'); - print(' Symptom: Duplicate device IDs causing list rendering issues'); - print(' Evidence: Prefixes added (ap_, ont_, sw_, wlan_)'); - print(' Risk: UI might not expect prefixed IDs'); - - print('\nIssue #5: Mock Data State Provider'); - print(' Symptom: Provider always shows error state'); - print(' Evidence: mockDataStateProvider checks error state of devicesNotifierProvider'); - print(' Risk: False positive mock data indicator'); -} - -void proposeSolutions() { - print('\n5. PROPOSED SOLUTIONS'); - print('-' * 40); - - print('IMMEDIATE ACTIONS:'); - print(' 1. Generate missing provider files:'); - print(' dart run build_runner build --delete-conflicting-outputs'); - print(''); - print(' 2. Check if providers are properly initialized:'); - print(' - Verify ProviderScope is at app root'); - print(' - Check for provider overrides'); - print(''); - print(' 3. Add error boundaries:'); - print(' - Wrap DevicesScreen body in try-catch'); - print(' - Add logging to identify exact crash point'); - - print('\nDEBUGGING STEPS:'); - print(' 1. Add logging at each data transformation step'); - print(' 2. Check device type strings match exactly'); - print(' 3. Verify JSON response structure from API'); - print(' 4. Test with minimal field selection first'); - print(' 5. Disable background refresh temporarily'); - - print('\nCODE FIXES NEEDED:'); - print(' 1. Ensure generated files exist'); - print(' 2. Add null safety checks in JSON parsing'); - print(' 3. Simplify provider dependencies'); - print(' 4. Fix potential infinite loops in providers'); - print(' 5. Verify device type string constants'); -} \ No newline at end of file diff --git a/scripts/diagnose_mock_data_flow.dart b/scripts/diagnose_mock_data_flow.dart deleted file mode 100644 index db97418..0000000 --- a/scripts/diagnose_mock_data_flow.dart +++ /dev/null @@ -1,153 +0,0 @@ -#!/usr/bin/env dart - -import 'package:rgnets_fdk/core/services/mock_data_service.dart'; -import 'package:rgnets_fdk/features/devices/data/datasources/device_mock_data_source.dart'; -import 'package:rgnets_fdk/core/config/environment.dart'; - -/// Diagnostic script to trace mock data flow and identify why production format isn't showing -void main() async { - print('MOCK DATA FLOW DIAGNOSTIC'); - print('=' * 80); - - // Set environment to development to ensure mock data is used - EnvironmentConfig.setEnvironment(Environment.development); - print('\n1. ENVIRONMENT CHECK:'); - print(' isDevelopment: ${EnvironmentConfig.isDevelopment}'); - print(' useSyntheticData: ${EnvironmentConfig.useSyntheticData}'); - - // Step 1: Check raw mock data from MockDataService - print('\n2. RAW MOCK DATA FROM MockDataService:'); - print('-' * 50); - - final mockService = MockDataService(); - final devices = mockService.getMockDevices(); - - print('Total devices in MockDataService: ${devices.length}'); - - // Check first few access points - print('\nFirst 5 Access Points (raw Device objects):'); - final aps = devices.where((d) => d.type == 'access_point').take(5).toList(); - for (final ap in aps) { - print(' ID: ${ap.id.padRight(10)} Name: ${ap.name}'); - } - - // Check first few switches - print('\nFirst 5 Switches (raw Device objects):'); - final switches = devices.where((d) => d.type == 'switch').take(5).toList(); - for (final sw in switches) { - print(' ID: ${sw.id.padRight(15)} Name: ${sw.name}'); - } - - // Step 2: Check JSON generated for API simulation - print('\n3. JSON GENERATED BY MockDataService:'); - print('-' * 50); - - final apJson = mockService.getMockAccessPointsJson(); - final switchJson = mockService.getMockSwitchesJson(); - - print('Access Points JSON (first 3):'); - final apResults = apJson['results'] as List; - for (final ap in apResults.take(3)) { - print(' ID: ${ap['id']}'); - print(' Name: ${ap['name']}'); - print(' Online: ${ap['online']}'); - print(''); - } - - print('Switches JSON (first 3):'); - final switchResults = switchJson['results'] as List; - for (final sw in switchResults.take(3)) { - print(' ID: ${sw['id']}'); - print(' Name: ${sw['name']}'); - print(' Online: ${sw['online']}'); - print(''); - } - - // Step 3: Check how DeviceMockDataSourceImpl parses the JSON - print('\n4. PARSED BY DeviceMockDataSourceImpl:'); - print('-' * 50); - - final mockDataSource = DeviceMockDataSourceImpl( - mockDataService: mockService, - ); - - final deviceModels = await mockDataSource.getDevices(); - print('Total DeviceModels from data source: ${deviceModels.length}'); - - print('\nFirst 5 Access Point Models:'); - final apModels = deviceModels.where((d) => d.type == 'access_point').take(5).toList(); - for (final model in apModels) { - print(' ID: ${model.id.padRight(10)} Name: ${model.name}'); - } - - print('\nFirst 5 Switch Models:'); - final switchModels = deviceModels.where((d) => d.type == 'switch').take(5).toList(); - for (final model in switchModels) { - print(' ID: ${model.id.padRight(15)} Name: ${model.name}'); - } - - // Step 4: Analyze name format - print('\n5. NAME FORMAT ANALYSIS:'); - print('-' * 50); - - // Check if names follow production format - void analyzeFormat(String name, String type) { - print('\nAnalyzing: $name'); - - // Expected format: [Type][Building]-[Floor]-[Serial]-[Model]-[RoomDesignation] - // e.g., AP1-2-0030-AP520-RM205 - - if (type == 'access_point') { - if (name.startsWith('AP') && name.contains('-RM')) { - final parts = name.split('-'); - if (parts.length >= 5) { - print(' βœ“ Follows production format'); - print(' Building: ${parts[0].substring(2)}'); - print(' Floor: ${parts[1]}'); - print(' Serial: ${parts[2]}'); - print(' Model: ${parts[3]}'); - print(' Room: ${parts[4]}'); - } else { - print(' βœ— Wrong number of parts: ${parts.length}'); - } - } else { - print(' βœ— Does not follow production format'); - print(' Expected: AP[b]-[f]-[serial]-[model]-RM[room]'); - } - } else if (type == 'switch') { - if (name.startsWith('SW') && (name.contains('-RM') || name.contains('-MDF') || name.contains('-IDF'))) { - final parts = name.split('-'); - if (parts.length >= 5) { - print(' βœ“ Follows production format'); - } else { - print(' βœ— Wrong number of parts: ${parts.length}'); - } - } else { - print(' βœ— Does not follow production format'); - print(' Expected: SW[b]-[f]-[serial]-[model]-[RM|MDF|IDF]'); - } - } - } - - // Analyze a few device names - if (apModels.isNotEmpty) { - analyzeFormat(apModels.first.name, 'access_point'); - } - if (switchModels.isNotEmpty) { - analyzeFormat(switchModels.first.name, 'switch'); - } - - // Summary - print('\n6. SUMMARY:'); - print('-' * 50); - print('Data flow:'); - print('1. MockDataService creates Device objects with production-format names'); - print('2. MockDataService.getMockAccessPointsJson() converts to JSON'); - print('3. DeviceMockDataSourceImpl parses JSON back to DeviceModel'); - print('4. Names should be preserved throughout this flow'); - - print('\nIf names are NOT in production format, check:'); - print('- Are we running the latest compiled code?'); - print('- Is hot reload picking up the changes?'); - print('- Try: flutter clean && flutter pub get && flutter run'); -} \ No newline at end of file diff --git a/scripts/diagnose_room_devices_spinner.dart b/scripts/diagnose_room_devices_spinner.dart deleted file mode 100644 index 347c733..0000000 --- a/scripts/diagnose_room_devices_spinner.dart +++ /dev/null @@ -1,156 +0,0 @@ -#!/usr/bin/env dart - -// Diagnostic script to understand why the devices tab shows an infinite spinner - -import 'dart:io'; - -void main() async { - print('=' * 80); - print('ROOM DEVICES TAB - INFINITE SPINNER DIAGNOSIS'); - print('=' * 80); - print(''); - - print('ANALYSIS OF THE FLOW:'); - print('-' * 40); - - print(''); - print('1. USER CLICKS DEVICES TAB'); - print(' β†’ _DevicesTab widget builds'); - print(' β†’ Watches: roomDeviceNotifierProvider(roomVm.id)'); - print(''); - - print('2. PROVIDER INITIALIZATION'); - print(' β†’ RoomDeviceNotifier.build(String roomId) is called'); - print(' β†’ Returns: RoomDeviceState(isLoading: true)'); - print(' β†’ Sets up listeners for:'); - print(' - devicesNotifierProvider'); - print(' - roomViewModelByIdProvider(roomId)'); - print(''); - - print('3. EXPECTED FLOW:'); - print(' β†’ devicesNotifierProvider triggers with data'); - print(' β†’ _updateDevices(roomId, devices) is called'); - print(' β†’ State updated with filtered devices'); - print(' β†’ isLoading set to false'); - print(''); - - print('4. WHAT\'S LIKELY HAPPENING:'); - print(' β†’ The listener is NOT being triggered'); - print(' β†’ OR _updateDevices throws an exception'); - print(' β†’ State remains in isLoading: true forever'); - print(''); - - print('CHECKING CODE ISSUES...'); - print('-' * 40); - - // Read the room device view model - final file = File('lib/features/rooms/presentation/providers/room_device_view_model.dart'); - if (!file.existsSync()) { - print('❌ room_device_view_model.dart not found'); - return; - } - - final content = file.readAsStringSync(); - - print(''); - print('POTENTIAL ISSUES FOUND:'); - print(''); - - // Issue 1: Build method returns const state - print('1. BUILD METHOD RETURNS CONST STATE:'); - print(' Line 48: const state = RoomDeviceState(isLoading: true);'); - print(' Line 66: return state;'); - print(' '); - print(' PROBLEM: The build method returns a const state variable'); - print(' that is never updated within the build method itself!'); - print(' '); - print(' The listeners set up in build() will update the instance'); - print(' state field, but build() returns the local const variable.'); - print(''); - - // Issue 2: Listener might not fire immediately - print('2. LISTENER TIMING ISSUE:'); - print(' The ref.listen() calls are set up in build()'); - print(' but if devicesNotifierProvider is already loaded,'); - print(' the listener might not fire for the current value.'); - print(''); - - // Issue 3: Error handling - print('3. ERROR HANDLING:'); - print(' If _updateDevices throws, the error is caught and'); - print(' _setError is called, but the widget checks for'); - print(' isLoading first, so it might still show spinner.'); - print(''); - - print('ROOT CAUSE IDENTIFIED:'); - print('=' * 40); - print(''); - print('The build() method in RoomDeviceNotifier has a critical bug:'); - print(''); - print('BROKEN CODE (lines 46-66):'); - print(' @override'); - print(' RoomDeviceState build(String roomId) {'); - print(' const state = RoomDeviceState(isLoading: true); // LOCAL const'); - print(' '); - print(' ref.listen(..., (previous, next) {'); - print(' // Updates this.state (instance field)'); - print(' });'); - print(' '); - print(' return state; // Returns LOCAL const, not instance field!'); - print(' }'); - print(''); - print('The local "const state" variable shadows the instance "state" field.'); - print('The listeners update the instance field, but build returns the local const.'); - print(''); - print('SOLUTION:'); - print(' Remove the local const variable and directly return the initial state:'); - print(' '); - print(' @override'); - print(' RoomDeviceState build(String roomId) {'); - print(' // Set up listeners...'); - print(' '); - print(' // Check current state of devices provider'); - print(' final devicesState = ref.read(devicesNotifierProvider);'); - print(' '); - print(' // Process initial state if data is available'); - print(' return devicesState.when('); - print(' data: (devices) {'); - print(' // Process and return initial state with devices'); - print(' },'); - print(' loading: () => const RoomDeviceState(isLoading: true),'); - print(' error: (error, _) => RoomDeviceState(error: error.toString()),'); - print(' );'); - print(' }'); - print(''); - - print('VERIFICATION:'); - print('-' * 40); - - // Check if this pattern exists - if (content.contains('const state = RoomDeviceState(isLoading: true);') && - content.contains('return state;')) { - print('βœ… CONFIRMED: The bug exists in the code'); - print(' Line 48: Local const state variable created'); - print(' Line 66: Local const state returned (never updated)'); - print(''); - print('This is why the devices tab shows infinite spinner!'); - print('The initial loading state is returned and never changes.'); - } else { - print('⚠️ Code pattern may have changed, manual review needed'); - } - - print(''); - print('=' * 80); - print('SUMMARY'); - print('=' * 80); - print(''); - print('The devices tab infinite spinner is caused by a variable shadowing bug'); - print('in RoomDeviceNotifier.build() method. The local const state variable'); - print('shadows the instance state field, causing the provider to always'); - print('return the initial loading state.'); - print(''); - print('FIX REQUIRED:'); - print('1. Remove the local const state variable'); - print('2. Process initial state from devicesNotifierProvider'); - print('3. Return appropriate initial state based on current data'); -} \ No newline at end of file diff --git a/scripts/diagnose_room_display_issue.dart b/scripts/diagnose_room_display_issue.dart deleted file mode 100644 index dbf1fac..0000000 --- a/scripts/diagnose_room_display_issue.dart +++ /dev/null @@ -1,139 +0,0 @@ -#!/usr/bin/env dart - -import 'dart:convert'; -import '../lib/core/services/mock_data_service.dart'; - -/// Diagnose what room data is actually being shown vs what we expect -void main() { - print('=' * 80); - print('DIAGNOSING ROOM DISPLAY ISSUE IN DEVELOPMENT MODE'); - print('=' * 80); - - final mockService = MockDataService(); - - print('\n1. CHECKING MOCK ROOMS (Entity Level)'); - print('-' * 40); - - // Get the Room entities that mock_data_source uses - final mockRooms = mockService.getMockRooms(); - print('Total Room entities: ${mockRooms.length}'); - - // Show first 5 Room entities - print('\nFirst 5 Room entities:'); - for (int i = 0; i < 5 && i < mockRooms.length; i++) { - final room = mockRooms[i]; - print('Room ${i + 1}:'); - print(' id: "${room.id}"'); - print(' name: "${room.name}"'); - print(' building: "${room.building}"'); - print(' location: "${room.location}"'); - print(' description: "${room.description}"'); - print(' deviceIds: ${room.deviceIds}'); - } - - print('\n2. CHECKING PMS ROOMS JSON (API Response Level)'); - print('-' * 40); - - // Get the JSON that remote_data_source would parse - final pmsRoomsJson = mockService.getMockPmsRoomsJson(); - final results = pmsRoomsJson['results'] as List; - print('Total PMS room JSON objects: ${results.length}'); - - // Show first 5 PMS room JSON objects - print('\nFirst 5 PMS room JSON objects:'); - for (int i = 0; i < 5 && i < results.length; i++) { - final roomJson = results[i] as Map; - print('Room ${i + 1}:'); - print(' id: ${roomJson['id']}'); - print(' room: "${roomJson['room']}"'); - if (roomJson['pms_property'] != null) { - final property = roomJson['pms_property'] as Map; - print(' pms_property.name: "${property['name']}"'); - } - - // Show what display name SHOULD be - final roomNumber = roomJson['room']?.toString(); - final propertyName = roomJson['pms_property']?['name']?.toString(); - final displayName = propertyName != null && roomNumber != null - ? '($propertyName) $roomNumber' - : roomNumber ?? 'Room ${roomJson['id']}'; - print(' Expected display: "$displayName"'); - } - - print('\n3. COMPARING ENTITY vs JSON DATA'); - print('-' * 40); - - // Check if Room entity names match expected display format - int matchingFormat = 0; - int notMatchingFormat = 0; - - for (int i = 0; i < 5 && i < mockRooms.length && i < results.length; i++) { - final room = mockRooms[i]; - final roomJson = results[i] as Map; - - // Calculate expected display from JSON - final roomNumber = roomJson['room']?.toString(); - final propertyName = roomJson['pms_property']?['name']?.toString(); - final expectedDisplay = propertyName != null && roomNumber != null - ? '($propertyName) $roomNumber' - : roomNumber ?? 'Room ${roomJson['id']}'; - - final matches = room.name == expectedDisplay; - - print('Room ${room.id}:'); - print(' Entity name: "${room.name}"'); - print(' Expected: "$expectedDisplay"'); - print(' Match: ${matches ? "YES βœ“" : "NO βœ—"}'); - - if (matches) { - matchingFormat++; - } else { - notMatchingFormat++; - } - } - - print('\n4. DATA FLOW PATH IN DEVELOPMENT'); - print('-' * 40); - - print('Development mode data flow:'); - print('1. RoomRepositoryImpl.getRooms() β†’ checks isDevelopment'); - print('2. If true β†’ calls mockDataSource.getRooms()'); - print('3. RoomMockDataSource uses mockDataService.getMockRooms()'); - print('4. Returns Room entities directly (NOT parsing JSON)'); - print('5. Room entities have .name field that should be displayed'); - - print('\n5. PROBLEM IDENTIFICATION'); - print('-' * 40); - - if (notMatchingFormat > 0) { - print('❌ PROBLEM FOUND:'); - print('Room entities have different names than expected display format!'); - print(''); - print('The issue is that:'); - print('- getMockRooms() returns Room entities with .name field'); - print('- These names may not be in "(Building) Room" format'); - print('- The mock_data_source uses these entities DIRECTLY'); - print('- It does NOT parse the JSON from getMockPmsRoomsJson()'); - print(''); - print('Solution: The Room entities in getMockRooms() need to have'); - print('their .name field formatted as "(Building) Room"'); - } else if (mockRooms.isEmpty) { - print('❌ PROBLEM: No mock rooms found!'); - } else { - print('βœ“ Room entity names appear to match expected format'); - } - - print('\n6. SAMPLE OF ROOM ENTITY NAMES'); - print('-' * 40); - - // Show a wider sample to see the pattern - print('Sample of actual Room entity names:'); - for (int i = 0; i < 20 && i < mockRooms.length; i += 4) { - final room = mockRooms[i]; - print(' ${room.id}: "${room.name}"'); - } - - print('\n' + '=' * 80); - print('DIAGNOSIS COMPLETE'); - print('=' * 80); -} \ No newline at end of file diff --git a/scripts/diagnose_staging_api.dart b/scripts/diagnose_staging_api.dart index 47b12d1..e0f845c 100644 --- a/scripts/diagnose_staging_api.dart +++ b/scripts/diagnose_staging_api.dart @@ -1,191 +1,97 @@ #!/usr/bin/env dart +// Offline diagnostic summary for staging API behaviour + import 'dart:convert'; import 'dart:io'; -import 'package:dio/dio.dart'; -import 'package:dio/io.dart'; -/// Direct test of staging API to diagnose room name issue -void main() async { - print('=' * 80); - print('STAGING API DIRECT DIAGNOSIS'); - print('=' * 80); - - // Staging API credentials from CLAUDE.md - const apiKey = 'xWCH1KHxwjHRZtNbyBDTrGQw1gDry98ChcXM7bpLbKaTUHZzUUBsCb77SHrJNHUKGLAKgmykxsxsAg6r'; - const baseUrl = 'https://vgw1-01.dal-interurban.mdu.attwifi.com'; - - final dio = Dio(BaseOptions( - baseUrl: baseUrl, - headers: { - 'Authorization': 'Bearer $apiKey', - 'Accept': 'application/json', - }, - validateStatus: (status) => status != null && status < 500, - )); - - // Accept self-signed certificates (as per the codebase) - (dio.httpClientAdapter as IOHttpClientAdapter).createHttpClient = () { - final client = HttpClient(); - client.badCertificateCallback = (cert, host, port) => true; - return client; +void _write([String? message]) => stdout.writeln(message ?? ''); + +void main() { + _write('=' * 80); + _write('STAGING API DIAGNOSTIC SUMMARY (OFFLINE)'); + _write('=' * 80); + _write(); + + describeEndpoints(); + showSamplePaginatedPayload(); + showSampleUnpaginatedPayload(); + showNullNameInvestigation(); + + _write(); + _write('=' * 80); + _write('DIAGNOSIS COMPLETE'); + _write('=' * 80); +} + +void describeEndpoints() { + _write('1. ENDPOINTS UNDER TEST'); + _write('-' * 40); + _write(' β€’ GET /api/pms_rooms.json?page=1&page_size=5'); + _write(' Returns a Map with pagination metadata and a results array.'); + _write(' β€’ GET /api/pms_rooms.json?page_size=0'); + _write(' Returns either a Map with results or, in some deployments, a direct List.'); + _write(' β€’ GET /api/pms_rooms/.json'); + _write(' Returns a JSON object describing a single room.'); +} + +void showSamplePaginatedPayload() { + _write(); + _write('2. SAMPLE PAGINATED RESPONSE (page=1&page_size=5)'); + _write('-' * 40); + + final paginated = { + 'count': 128, + 'next': 'https://example.com/api/pms_rooms.json?page=2&page_size=5', + 'previous': null, + 'results': [ + { + 'id': 128, + 'room': '803', + 'name': '(Interurban) 803', + 'online': true, + 'pms_property': {'id': 1, 'name': 'Interurban'}, + }, + ], }; - - try { - print('\n1. TESTING /api/pms_rooms.json WITH PAGINATION:'); - print('-' * 40); - - // First test with regular pagination - final paginatedResponse = await dio.get('/api/pms_rooms.json?page=1&page_size=5'); - - if (paginatedResponse.statusCode == 200) { - print('Status: ${paginatedResponse.statusCode} OK'); - print('Response type: ${paginatedResponse.data.runtimeType}'); - - if (paginatedResponse.data is Map) { - final data = paginatedResponse.data as Map; - print('Response keys: ${data.keys.toList()}'); - - if (data['results'] != null && data['results'] is List) { - final results = data['results'] as List; - print('Number of results: ${results.length}'); - - if (results.isNotEmpty) { - print('\nFirst room with pagination:'); - final firstRoom = results.first as Map; - print(' Keys: ${firstRoom.keys.toList()}'); - print(' ID: ${firstRoom['id']}'); - print(' Name: ${firstRoom['name']} (type: ${firstRoom['name'].runtimeType})'); - print(' Name is null: ${firstRoom['name'] == null}'); - print(' Full data: ${json.encode(firstRoom)}'); - } - } - } - } else { - print('Error: Status ${paginatedResponse.statusCode}'); - } - - print('\n2. TESTING /api/pms_rooms.json?page_size=0:'); - print('-' * 40); - - // Test with page_size=0 (as used in the app) - final unpaginatedResponse = await dio.get('/api/pms_rooms.json?page_size=0'); - - if (unpaginatedResponse.statusCode == 200) { - print('Status: ${unpaginatedResponse.statusCode} OK'); - print('Response type: ${unpaginatedResponse.data.runtimeType}'); - - // Check if it returns a List directly - if (unpaginatedResponse.data is List) { - final results = unpaginatedResponse.data as List; - print('DIRECT LIST RESPONSE!'); - print('Number of rooms: ${results.length}'); - - if (results.isNotEmpty) { - print('\nFirst few rooms:'); - for (int i = 0; i < 3 && i < results.length; i++) { - final room = results[i] as Map; - print(' Room ${i + 1}:'); - print(' ID: ${room['id']}'); - print(' Name: ${room['name']}'); - print(' Name is null: ${room['name'] == null}'); - } - - // Check for rooms with null names - print('\nScanning for null names...'); - int nullNameCount = 0; - for (final room in results) { - if (room is Map && room['name'] == null) { - nullNameCount++; - print(' Found null name: Room ID ${room['id']}'); - if (nullNameCount <= 3) { - print(' Full data: ${json.encode(room)}'); - } - } - } - print('Total rooms with null names: $nullNameCount / ${results.length}'); - } - } - // Check if it returns a Map with results - else if (unpaginatedResponse.data is Map) { - final data = unpaginatedResponse.data as Map; - print('MAP RESPONSE'); - print('Response keys: ${data.keys.toList()}'); - - if (data['results'] != null && data['results'] is List) { - final results = data['results'] as List; - print('Number of results: ${results.length}'); - - if (results.isNotEmpty) { - print('\nFirst few rooms:'); - for (int i = 0; i < 3 && i < results.length; i++) { - final room = results[i] as Map; - print(' Room ${i + 1}:'); - print(' ID: ${room['id']}'); - print(' Name: ${room['name']}'); - print(' Name is null: ${room['name'] == null}'); - } - } - } - } else { - print('Unexpected response type: ${unpaginatedResponse.data.runtimeType}'); - } - } else { - print('Error: Status ${unpaginatedResponse.statusCode}'); - } - - print('\n3. TESTING SPECIFIC ROOM (e.g., /api/pms_rooms/128.json):'); - print('-' * 40); - - // Test fetching a specific room - try { - final singleRoomResponse = await dio.get('/api/pms_rooms/128.json'); - - if (singleRoomResponse.statusCode == 200) { - print('Status: ${singleRoomResponse.statusCode} OK'); - final room = singleRoomResponse.data as Map; - print('Room 128 details:'); - print(' Keys: ${room.keys.toList()}'); - print(' ID: ${room['id']}'); - print(' Name: ${room['name']}'); - print(' Name type: ${room['name'].runtimeType}'); - print(' Name is null: ${room['name'] == null}'); - print(' Full data: ${json.encode(room)}'); - } else { - print('Error: Status ${singleRoomResponse.statusCode}'); - } - } catch (e) { - print('Failed to fetch room 128: $e'); - // Try another room ID - try { - print('\nTrying room 1000...'); - final altResponse = await dio.get('/api/pms_rooms/1000.json'); - if (altResponse.statusCode == 200) { - final room = altResponse.data as Map; - print('Room 1000: Name="${room['name']}", ID=${room['id']}'); - } - } catch (e2) { - print('Failed to fetch room 1000: $e2'); - } - } - - print('\n4. ANALYSIS:'); - print('-' * 40); - print('Key findings will be displayed above.'); - print('Look for:'); - print(' - Response format differences between paginated and page_size=0'); - print(' - Whether any rooms actually have null names'); - print(' - The exact structure of the API response'); - - } catch (e) { - print('\nERROR: $e'); - if (e is DioException) { - print('Response: ${e.response?.data}'); - print('Status code: ${e.response?.statusCode}'); - } - } - - print('\n' + '=' * 80); - print('DIAGNOSIS COMPLETE'); - print('=' * 80); -} \ No newline at end of file + + _write(const JsonEncoder.withIndent(' ').convert(paginated)); +} + +void showSampleUnpaginatedPayload() { + _write(); + _write('3. SAMPLE UNPAGINATED RESPONSE (page_size=0)'); + _write('-' * 40); + + final unpaginated = [ + { + 'id': 1000, + 'room': '101', + 'name': '(North Tower) 101', + 'online': true, + 'pms_property': {'id': 2, 'name': 'North Tower'}, + }, + { + 'id': 1001, + 'room': '102', + 'name': null, + 'online': false, + 'pms_property': {'id': 2, 'name': 'North Tower'}, + }, + ]; + + _write(const JsonEncoder.withIndent(' ').convert(unpaginated)); + _write(' β†’ Note: some rows may have name=null, which the app must handle.'); +} + +void showNullNameInvestigation() { + _write(); + _write('4. NULL NAME INVESTIGATION'); + _write('-' * 40); + + _write(' β€’ When the API returns name=null, RoomRemoteDataSource builds the display'); + _write(' name from (pms_property.name, room).'); + _write(' β€’ Development mock data should mirror this by leaving name empty in the JSON'); + _write(' and letting the RoomModel/Room entity compute the display field.'); + _write(' β€’ Ensure the Room entity used in dev mode stores the computed display name.'); +} diff --git a/test/features/devices/domain/usecases/get_devices_test.dart b/test/features/devices/domain/usecases/get_devices_test.dart index 8b2978c..ae51d41 100644 --- a/test/features/devices/domain/usecases/get_devices_test.dart +++ b/test/features/devices/domain/usecases/get_devices_test.dart @@ -5,6 +5,7 @@ import 'package:rgnets_fdk/core/errors/failures.dart'; import 'package:rgnets_fdk/features/devices/domain/entities/device.dart'; import 'package:rgnets_fdk/features/devices/domain/repositories/device_repository.dart'; import 'package:rgnets_fdk/features/devices/domain/usecases/get_devices.dart'; +import 'package:rgnets_fdk/features/devices/domain/usecases/get_devices_params.dart'; class MockDeviceRepository extends Mock implements DeviceRepository {} @@ -57,7 +58,7 @@ void main() { .thenAnswer((_) async => Right>(tDevicesList)); // act - final result = await usecase(); + final result = await usecase(const GetDevicesParams()); // assert expect(result, Right>(tDevicesList)); @@ -72,7 +73,7 @@ void main() { .thenAnswer((_) async => const Right>(tEmptyList)); // act - final result = await usecase(); + final result = await usecase(const GetDevicesParams()); // assert expect(result, const Right>(tEmptyList)); @@ -90,7 +91,7 @@ void main() { .thenAnswer((_) async => const Left>(tFailure)); // act - final result = await usecase(); + final result = await usecase(const GetDevicesParams()); // assert expect(result, const Left>(tFailure)); @@ -108,7 +109,7 @@ void main() { .thenAnswer((_) async => const Left>(tFailure)); // act - final result = await usecase(); + final result = await usecase(const GetDevicesParams()); // assert expect(result, const Left>(tFailure)); @@ -126,7 +127,7 @@ void main() { .thenAnswer((_) async => const Left>(tFailure)); // act - final result = await usecase(); + final result = await usecase(const GetDevicesParams()); // assert expect(result, const Left>(tFailure)); @@ -144,7 +145,7 @@ void main() { .thenAnswer((_) async => const Left>(tFailure)); // act - final result = await usecase(); + final result = await usecase(const GetDevicesParams()); // assert expect(result, const Left>(tFailure)); @@ -161,7 +162,7 @@ void main() { .thenAnswer((_) async => const Left>(tFailure)); // act - final result = await usecase(); + final result = await usecase(const GetDevicesParams()); // assert expect(result, const Left>(tFailure)); @@ -175,7 +176,7 @@ void main() { .thenAnswer((_) async => Right>(tDevicesList)); // act - await usecase(); + await usecase(const GetDevicesParams()); // assert verify(() => mockRepository.getDevices()).called(1); @@ -188,7 +189,7 @@ void main() { .thenAnswer((_) async => Right>(tDevicesList)); // act - final result = await usecase(); + final result = await usecase(const GetDevicesParams()); // assert result.fold( @@ -197,4 +198,4 @@ void main() { ); }); }); -} \ No newline at end of file +} diff --git a/test/features/devices/presentation/screens/devices_screen_network_info_test.dart b/test/features/devices/presentation/screens/devices_screen_network_info_test.dart index bb2fa4b..a1109ae 100644 --- a/test/features/devices/presentation/screens/devices_screen_network_info_test.dart +++ b/test/features/devices/presentation/screens/devices_screen_network_info_test.dart @@ -24,7 +24,7 @@ String formatNetworkInfo(Device device) { void main() { group('DevicesScreen Network Info Formatting', () { test('should show "No IP β€’ No MAC" for null values', () { - final device = Device( + const device = Device( id: 'test1', name: 'Test Device', type: 'access_point', @@ -37,7 +37,7 @@ void main() { }); test('should show "No IP β€’ No MAC" for empty strings', () { - final device = Device( + const device = Device( id: 'test2', name: 'Test Device', type: 'access_point', @@ -50,7 +50,7 @@ void main() { }); test('should show "No IP β€’ No MAC" for whitespace only', () { - final device = Device( + const device = Device( id: 'test3', name: 'Test Device', type: 'access_point', @@ -63,7 +63,7 @@ void main() { }); test('should show IP and MAC when both present', () { - final device = Device( + const device = Device( id: 'test4', name: 'Test Device', type: 'access_point', @@ -79,7 +79,7 @@ void main() { }); test('should show only IP when MAC is empty', () { - final device = Device( + const device = Device( id: 'test5', name: 'Test Device', type: 'access_point', @@ -92,7 +92,7 @@ void main() { }); test('should show only MAC when IP is null', () { - final device = Device( + const device = Device( id: 'test6', name: 'Test Device', type: 'access_point', @@ -105,7 +105,7 @@ void main() { }); test('should show only IPv6 address when it is long', () { - final device = Device( + const device = Device( id: 'test7', name: 'Test Device', type: 'access_point', @@ -121,7 +121,7 @@ void main() { }); test('should show short IPv6 with MAC', () { - final device = Device( + const device = Device( id: 'test8', name: 'Test Device', type: 'access_point', @@ -133,4 +133,4 @@ void main() { expect(formatNetworkInfo(device), equals('::1 β€’ AA:BB:CC:DD:EE:FF')); }); }); -} \ No newline at end of file +} diff --git a/test/features/rooms/domain/usecases/get_rooms_test.dart b/test/features/rooms/domain/usecases/get_rooms_test.dart index e04cebe..9f529bb 100644 --- a/test/features/rooms/domain/usecases/get_rooms_test.dart +++ b/test/features/rooms/domain/usecases/get_rooms_test.dart @@ -21,25 +21,23 @@ void main() { final tRoomsList = [ Room( id: 'room-1', - name: 'Main Office', + name: '(Building A) Main Office', + roomNumber: '101', description: 'Primary office space', location: 'Ground Floor', - floor: 1, - building: 'Building A', - deviceIds: ['device-1', 'device-2'], - metadata: {'capacity': 50, 'type': 'office'}, + deviceIds: const ['device-1', 'device-2'], + metadata: const {'capacity': 50, 'type': 'office'}, createdAt: DateTime(2024, 1, 1, 10, 0, 0), updatedAt: DateTime(2024, 1, 2, 10, 0, 0), ), Room( id: 'room-2', - name: 'Conference Room A', + name: '(Building A) Conference Room A', + roomNumber: '201', description: 'Large conference room', location: 'First Floor', - floor: 2, - building: 'Building A', - deviceIds: ['device-3', 'device-4', 'device-5'], - metadata: {'capacity': 20, 'type': 'conference'}, + deviceIds: const ['device-3', 'device-4', 'device-5'], + metadata: const {'capacity': 20, 'type': 'conference'}, createdAt: DateTime(2024, 1, 1, 11, 0, 0), updatedAt: DateTime(2024, 1, 2, 11, 0, 0), ), @@ -204,16 +202,16 @@ void main() { (failure) => fail('Should not return failure'), (rooms) { expect(rooms.first.id, 'room-1'); - expect(rooms.first.name, 'Main Office'); - expect(rooms.first.floor, 1); - expect(rooms.first.deviceIds, ['device-1', 'device-2']); + expect(rooms.first.name, '(Building A) Main Office'); + expect(rooms.first.roomNumber, '101'); + expect(rooms.first.deviceIds, const ['device-1', 'device-2']); expect(rooms.last.id, 'room-2'); - expect(rooms.last.name, 'Conference Room A'); - expect(rooms.last.floor, 2); - expect(rooms.last.deviceIds, ['device-3', 'device-4', 'device-5']); + expect(rooms.last.name, '(Building A) Conference Room A'); + expect(rooms.last.roomNumber, '201'); + expect(rooms.last.deviceIds, const ['device-3', 'device-4', 'device-5']); }, ); }); }); -} \ No newline at end of file +} diff --git a/test/features/scanner/domain/usecases/process_barcode_test.dart b/test/features/scanner/domain/usecases/process_barcode_test.dart index 0e411c1..d60f1dc 100644 --- a/test/features/scanner/domain/usecases/process_barcode_test.dart +++ b/test/features/scanner/domain/usecases/process_barcode_test.dart @@ -56,15 +56,15 @@ void main() { test('should process barcode successfully when validation passes', () async { // arrange when(() => mockRepository.validateBarcode(tBarcode, tDeviceType)) - .thenAnswer((_) async => const Right(true)); + .thenAnswer((_) async => const Right(true)); when(() => mockRepository.updateSession(tSessionId, tBarcode)) - .thenAnswer((_) async => Right(tUpdatedSession)); + .thenAnswer((_) async => Right(tUpdatedSession)); // act final result = await usecase(tParams); // assert - expect(result, Right(tUpdatedSession)); + expect(result, Right(tUpdatedSession)); verify(() => mockRepository.validateBarcode(tBarcode, tDeviceType)).called(1); verify(() => mockRepository.updateSession(tSessionId, tBarcode)).called(1); verifyNoMoreInteractions(mockRepository); @@ -73,13 +73,18 @@ void main() { test('should return ValidationFailure when barcode validation fails', () async { // arrange when(() => mockRepository.validateBarcode(tBarcode, tDeviceType)) - .thenAnswer((_) async => const Right(false)); + .thenAnswer((_) async => const Right(false)); // act final result = await usecase(tParams); // assert - expect(result, const Left(ValidationFailure(message: 'Invalid barcode for device type'))); + expect( + result, + const Left( + ValidationFailure(message: 'Invalid barcode for device type'), + ), + ); verify(() => mockRepository.validateBarcode(tBarcode, tDeviceType)).called(1); verifyNever(() => mockRepository.updateSession(any(), any())); verifyNoMoreInteractions(mockRepository); @@ -92,13 +97,13 @@ void main() { statusCode: 503, ); when(() => mockRepository.validateBarcode(tBarcode, tDeviceType)) - .thenAnswer((_) async => const Left(tValidationFailure)); + .thenAnswer((_) async => const Left(tValidationFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tValidationFailure)); + expect(result, const Left(tValidationFailure)); verify(() => mockRepository.validateBarcode(tBarcode, tDeviceType)).called(1); verifyNever(() => mockRepository.updateSession(any(), any())); verifyNoMoreInteractions(mockRepository); @@ -111,15 +116,15 @@ void main() { statusCode: 500, ); when(() => mockRepository.validateBarcode(tBarcode, tDeviceType)) - .thenAnswer((_) async => const Right(true)); + .thenAnswer((_) async => const Right(true)); when(() => mockRepository.updateSession(tSessionId, tBarcode)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.validateBarcode(tBarcode, tDeviceType)).called(1); verify(() => mockRepository.updateSession(tSessionId, tBarcode)).called(1); verifyNoMoreInteractions(mockRepository); @@ -132,15 +137,15 @@ void main() { statusCode: 404, ); when(() => mockRepository.validateBarcode(tBarcode, tDeviceType)) - .thenAnswer((_) async => const Right(true)); + .thenAnswer((_) async => const Right(true)); when(() => mockRepository.updateSession(tSessionId, tBarcode)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.validateBarcode(tBarcode, tDeviceType)).called(1); verify(() => mockRepository.updateSession(tSessionId, tBarcode)).called(1); }); @@ -153,15 +158,15 @@ void main() { deviceType: DeviceType.ont, ); when(() => mockRepository.validateBarcode(tBarcode, DeviceType.ont)) - .thenAnswer((_) async => const Right(true)); + .thenAnswer((_) async => const Right(true)); when(() => mockRepository.updateSession(tSessionId, tBarcode)) - .thenAnswer((_) async => Right(tUpdatedSession)); + .thenAnswer((_) async => Right(tUpdatedSession)); // act final result = await usecase(tOntParams); // assert - expect(result, Right(tUpdatedSession)); + expect(result, Right(tUpdatedSession)); verify(() => mockRepository.validateBarcode(tBarcode, DeviceType.ont)).called(1); verify(() => mockRepository.updateSession(tSessionId, tBarcode)).called(1); }); @@ -187,15 +192,15 @@ void main() { ], ); when(() => mockRepository.validateBarcode(tMacAddress, tDeviceType)) - .thenAnswer((_) async => const Right(true)); + .thenAnswer((_) async => const Right(true)); when(() => mockRepository.updateSession(tSessionId, tMacAddress)) - .thenAnswer((_) async => Right(tMacSession)); + .thenAnswer((_) async => Right(tMacSession)); // act final result = await usecase(tMacParams); // assert - expect(result, Right(tMacSession)); + expect(result, Right(tMacSession)); verify(() => mockRepository.validateBarcode(tMacAddress, tDeviceType)).called(1); verify(() => mockRepository.updateSession(tSessionId, tMacAddress)).called(1); }); @@ -241,4 +246,4 @@ void main() { }); }); }); -} \ No newline at end of file +} diff --git a/test/features/scanner/domain/usecases/start_scan_session_test.dart b/test/features/scanner/domain/usecases/start_scan_session_test.dart index 893403d..54299e6 100644 --- a/test/features/scanner/domain/usecases/start_scan_session_test.dart +++ b/test/features/scanner/domain/usecases/start_scan_session_test.dart @@ -41,13 +41,13 @@ void main() { test('should start scan session successfully', () async { // arrange when(() => mockRepository.startSession(tDeviceType)) - .thenAnswer((_) async => Right(tScanSession)); + .thenAnswer((_) async => Right(tScanSession)); // act final result = await usecase(tParams); // assert - expect(result, Right(tScanSession)); + expect(result, Right(tScanSession)); verify(() => mockRepository.startSession(tDeviceType)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -60,13 +60,13 @@ void main() { deviceType: DeviceType.ont, ); when(() => mockRepository.startSession(DeviceType.ont)) - .thenAnswer((_) async => Right(tOntSession)); + .thenAnswer((_) async => Right(tOntSession)); // act final result = await usecase(tOntParams); // assert - expect(result, Right(tOntSession)); + expect(result, Right(tOntSession)); result.fold( (failure) => fail('Should not return failure'), (session) => expect(session.deviceType, DeviceType.ont), @@ -82,13 +82,13 @@ void main() { deviceType: DeviceType.switchDevice, ); when(() => mockRepository.startSession(DeviceType.switchDevice)) - .thenAnswer((_) async => Right(tSwitchSession)); + .thenAnswer((_) async => Right(tSwitchSession)); // act final result = await usecase(tSwitchParams); // assert - expect(result, Right(tSwitchSession)); + expect(result, Right(tSwitchSession)); result.fold( (failure) => fail('Should not return failure'), (session) => expect(session.deviceType, DeviceType.switchDevice), @@ -103,13 +103,13 @@ void main() { statusCode: 500, ); when(() => mockRepository.startSession(tDeviceType)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.startSession(tDeviceType)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -121,13 +121,13 @@ void main() { statusCode: 409, ); when(() => mockRepository.startSession(tDeviceType)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.startSession(tDeviceType)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -138,13 +138,13 @@ void main() { message: 'Failed to save session to cache', ); when(() => mockRepository.startSession(tDeviceType)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.startSession(tDeviceType)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -156,13 +156,13 @@ void main() { statusCode: 400, ); when(() => mockRepository.startSession(tDeviceType)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.startSession(tDeviceType)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -170,7 +170,7 @@ void main() { test('should pass correct device type to repository', () async { // arrange when(() => mockRepository.startSession(any())) - .thenAnswer((_) async => Right(tScanSession)); + .thenAnswer((_) async => Right(tScanSession)); // act await usecase(tParams); @@ -182,7 +182,7 @@ void main() { test('should return session with correct initial state', () async { // arrange when(() => mockRepository.startSession(tDeviceType)) - .thenAnswer((_) async => Right(tScanSession)); + .thenAnswer((_) async => Right(tScanSession)); // act final result = await usecase(tParams); @@ -229,4 +229,4 @@ void main() { }); }); }); -} \ No newline at end of file +} diff --git a/test/features/scanner/domain/usecases/validate_device_scan_test.dart b/test/features/scanner/domain/usecases/validate_device_scan_test.dart index bd350ed..b0f3ed8 100644 --- a/test/features/scanner/domain/usecases/validate_device_scan_test.dart +++ b/test/features/scanner/domain/usecases/validate_device_scan_test.dart @@ -1,5 +1,6 @@ import 'package:flutter_test/flutter_test.dart'; import 'package:fpdart/fpdart.dart'; +import 'package:rgnets_fdk/core/errors/failures.dart'; import 'package:rgnets_fdk/features/scanner/domain/entities/scan_result.dart'; import 'package:rgnets_fdk/features/scanner/domain/entities/scan_session.dart'; import 'package:rgnets_fdk/features/scanner/domain/usecases/validate_device_scan.dart'; @@ -39,7 +40,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(true)); + expect(result, const Right(true)); }); test('should return false when serial number is missing', () async { @@ -55,7 +56,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(false)); + expect(result, const Right(false)); }); test('should return false when MAC address is missing', () async { @@ -71,7 +72,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(false)); + expect(result, const Right(false)); }); test('should return false when serial number is empty', () async { @@ -87,7 +88,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(false)); + expect(result, const Right(false)); }); test('should return false when MAC address is empty', () async { @@ -103,7 +104,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(false)); + expect(result, const Right(false)); }); test('should return false when both fields are missing', () async { @@ -119,7 +120,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(false)); + expect(result, const Right(false)); }); }); @@ -137,7 +138,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(true)); + expect(result, const Right(true)); }); test('should return false when serial number is missing', () async { @@ -153,7 +154,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(false)); + expect(result, const Right(false)); }); test('should return false when MAC address is missing', () async { @@ -169,7 +170,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(false)); + expect(result, const Right(false)); }); test('should return false when both fields are empty strings', () async { @@ -185,7 +186,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(false)); + expect(result, const Right(false)); }); }); @@ -203,7 +204,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(true)); + expect(result, const Right(true)); }); test('should return true when serial number is present and MAC address is also present', () async { @@ -219,7 +220,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(true)); + expect(result, const Right(true)); }); test('should return false when serial number is missing', () async { @@ -235,7 +236,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(false)); + expect(result, const Right(false)); }); test('should return false when serial number is empty', () async { @@ -251,7 +252,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(false)); + expect(result, const Right(false)); }); }); @@ -289,7 +290,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(true)); + expect(result, const Right(true)); }); test('should validate session with additional metadata', () async { @@ -310,7 +311,7 @@ void main() { final result = await usecase(tParams); // assert - expect(result, const Right(true)); + expect(result, const Right(true)); }); }); @@ -332,4 +333,4 @@ void main() { }); }); }); -} \ No newline at end of file +} diff --git a/test/features/settings/domain/usecases/clear_cache_test.dart b/test/features/settings/domain/usecases/clear_cache_test.dart index a9e431e..336d005 100644 --- a/test/features/settings/domain/usecases/clear_cache_test.dart +++ b/test/features/settings/domain/usecases/clear_cache_test.dart @@ -21,13 +21,13 @@ void main() { test('should clear cache successfully', () async { // arrange when(() => mockRepository.clearCache()) - .thenAnswer((_) async => const Right(null)); + .thenAnswer((_) async => const Right(null)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Right(null)); + expect(result, const Right(null)); verify(() => mockRepository.clearCache()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -38,13 +38,13 @@ void main() { message: 'Failed to clear application cache', ); when(() => mockRepository.clearCache()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.clearCache()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -56,13 +56,13 @@ void main() { statusCode: 503, ); when(() => mockRepository.clearCache()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.clearCache()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -74,13 +74,13 @@ void main() { statusCode: 403, ); when(() => mockRepository.clearCache()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.clearCache()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -88,7 +88,7 @@ void main() { test('should handle successful cache clear with void return type', () async { // arrange when(() => mockRepository.clearCache()) - .thenAnswer((_) async => const Right(null)); + .thenAnswer((_) async => const Right(null)); // act final result = await usecase(const NoParams()); @@ -105,7 +105,7 @@ void main() { test('should call repository method once', () async { // arrange when(() => mockRepository.clearCache()) - .thenAnswer((_) async => const Right(null)); + .thenAnswer((_) async => const Right(null)); // act await usecase(const NoParams()); @@ -121,13 +121,13 @@ void main() { message: 'Unable to access cache storage', ); when(() => mockRepository.clearCache()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.clearCache()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -138,13 +138,13 @@ void main() { message: 'Some cache entries could not be cleared', ); when(() => mockRepository.clearCache()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.clearCache()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -155,15 +155,15 @@ void main() { message: 'Insufficient disk space for cache operations', ); when(() => mockRepository.clearCache()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.clearCache()).called(1); verifyNoMoreInteractions(mockRepository); }); }); -} \ No newline at end of file +} diff --git a/test/features/settings/domain/usecases/export_settings_test.dart b/test/features/settings/domain/usecases/export_settings_test.dart index df1e3c4..c17d179 100644 --- a/test/features/settings/domain/usecases/export_settings_test.dart +++ b/test/features/settings/domain/usecases/export_settings_test.dart @@ -50,13 +50,13 @@ void main() { test('should export settings successfully', () async { // arrange when(() => mockRepository.exportSettings()) - .thenAnswer((_) async => const Right(tExportedData)); + .thenAnswer((_) async => const Right>(tExportedData)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Right(tExportedData)); + expect(result, const Right>(tExportedData)); verify(() => mockRepository.exportSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -64,7 +64,7 @@ void main() { test('should return exported data with correct structure', () async { // arrange when(() => mockRepository.exportSettings()) - .thenAnswer((_) async => const Right(tExportedData)); + .thenAnswer((_) async => const Right>(tExportedData)); // act final result = await usecase(const NoParams()); @@ -98,13 +98,13 @@ void main() { 'exportedAt': '2024-01-01T10:00:00Z', }; when(() => mockRepository.exportSettings()) - .thenAnswer((_) async => const Right(tMinimalExport)); + .thenAnswer((_) async => const Right>(tMinimalExport)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Right(tMinimalExport)); + expect(result, const Right>(tMinimalExport)); result.fold( (failure) => fail('Should not return failure'), (data) { @@ -123,13 +123,13 @@ void main() { statusCode: 500, ); when(() => mockRepository.exportSettings()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left>(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left>(tFailure)); verify(() => mockRepository.exportSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -140,13 +140,13 @@ void main() { message: 'Failed to read settings from cache for export', ); when(() => mockRepository.exportSettings()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left>(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left>(tFailure)); verify(() => mockRepository.exportSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -158,13 +158,13 @@ void main() { statusCode: 400, ); when(() => mockRepository.exportSettings()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left>(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left>(tFailure)); verify(() => mockRepository.exportSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -205,13 +205,13 @@ void main() { }, }; when(() => mockRepository.exportSettings()) - .thenAnswer((_) async => const Right(tComplexExport)); + .thenAnswer((_) async => const Right>(tComplexExport)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Right(tComplexExport)); + expect(result, const Right>(tComplexExport)); result.fold( (failure) => fail('Should not return failure'), (data) { @@ -227,7 +227,7 @@ void main() { test('should call repository method once', () async { // arrange when(() => mockRepository.exportSettings()) - .thenAnswer((_) async => const Right(tExportedData)); + .thenAnswer((_) async => const Right>(tExportedData)); // act await usecase(const NoParams()); @@ -245,13 +245,13 @@ void main() { 'exportedAt': '2024-01-01T10:00:00Z', }; when(() => mockRepository.exportSettings()) - .thenAnswer((_) async => const Right(tEmptyExport)); + .thenAnswer((_) async => const Right>(tEmptyExport)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Right(tEmptyExport)); + expect(result, const Right>(tEmptyExport)); result.fold( (failure) => fail('Should not return failure'), (data) { @@ -268,13 +268,13 @@ void main() { statusCode: 403, ); when(() => mockRepository.exportSettings()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left>(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left>(tFailure)); verify(() => mockRepository.exportSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); diff --git a/test/features/settings/domain/usecases/get_settings_test.dart b/test/features/settings/domain/usecases/get_settings_test.dart index cdee0e6..41d789b 100644 --- a/test/features/settings/domain/usecases/get_settings_test.dart +++ b/test/features/settings/domain/usecases/get_settings_test.dart @@ -24,13 +24,13 @@ void main() { test('should get settings from repository successfully', () async { // arrange when(() => mockRepository.getSettings()) - .thenAnswer((_) async => Right(tSettings)); + .thenAnswer((_) async => Right(tSettings)); // act final result = await usecase(const NoParams()); // assert - expect(result, Right(tSettings)); + expect(result, Right(tSettings)); verify(() => mockRepository.getSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -44,13 +44,13 @@ void main() { enableOfflineMode: false, ); when(() => mockRepository.getSettings()) - .thenAnswer((_) async => Right(tCustomSettings)); + .thenAnswer((_) async => Right(tCustomSettings)); // act final result = await usecase(const NoParams()); // assert - expect(result, Right(tCustomSettings)); + expect(result, Right(tCustomSettings)); result.fold( (failure) => fail('Should not return failure'), (settings) { @@ -70,13 +70,13 @@ void main() { statusCode: 500, ); when(() => mockRepository.getSettings()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.getSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -87,13 +87,13 @@ void main() { message: 'Failed to read settings from cache', ); when(() => mockRepository.getSettings()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.getSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -105,13 +105,13 @@ void main() { statusCode: 400, ); when(() => mockRepository.getSettings()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.getSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -150,13 +150,13 @@ void main() { enableMockData: true, ); when(() => mockRepository.getSettings()) - .thenAnswer((_) async => const Right(tAllConfigSettings)); + .thenAnswer((_) async => const Right(tAllConfigSettings)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Right(tAllConfigSettings)); + expect(result, const Right(tAllConfigSettings)); result.fold( (failure) => fail('Should not return failure'), (settings) { @@ -186,7 +186,7 @@ void main() { test('should call repository method once', () async { // arrange when(() => mockRepository.getSettings()) - .thenAnswer((_) async => Right(tSettings)); + .thenAnswer((_) async => Right(tSettings)); // act await usecase(const NoParams()); diff --git a/test/features/settings/domain/usecases/import_settings_test.dart b/test/features/settings/domain/usecases/import_settings_test.dart index 892de14..f8613f7 100644 --- a/test/features/settings/domain/usecases/import_settings_test.dart +++ b/test/features/settings/domain/usecases/import_settings_test.dart @@ -69,13 +69,13 @@ void main() { test('should import settings successfully', () async { // arrange when(() => mockRepository.importSettings(tImportData)) - .thenAnswer((_) async => const Right(tImportedSettings)); + .thenAnswer((_) async => const Right(tImportedSettings)); // act final result = await usecase(tParams); // assert - expect(result, const Right(tImportedSettings)); + expect(result, const Right(tImportedSettings)); verify(() => mockRepository.importSettings(tImportData)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -83,7 +83,7 @@ void main() { test('should return imported settings with correct values', () async { // arrange when(() => mockRepository.importSettings(tImportData)) - .thenAnswer((_) async => const Right(tImportedSettings)); + .thenAnswer((_) async => const Right(tImportedSettings)); // act final result = await usecase(tParams); @@ -116,13 +116,13 @@ void main() { statusCode: 400, ); when(() => mockRepository.importSettings(tInvalidData)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tInvalidParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.importSettings(tInvalidData)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -139,13 +139,13 @@ void main() { statusCode: 400, ); when(() => mockRepository.importSettings(tIncompatibleData)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tIncompatibleParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.importSettings(tIncompatibleData)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -157,13 +157,13 @@ void main() { statusCode: 500, ); when(() => mockRepository.importSettings(tImportData)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.importSettings(tImportData)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -174,13 +174,13 @@ void main() { message: 'Failed to save imported settings to cache', ); when(() => mockRepository.importSettings(tImportData)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.importSettings(tImportData)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -201,13 +201,13 @@ void main() { ); const tPartialParams = ImportSettingsParams(data: tPartialData); when(() => mockRepository.importSettings(tPartialData)) - .thenAnswer((_) async => Right(tPartialSettings)); + .thenAnswer((_) async => Right(tPartialSettings)); // act final result = await usecase(tPartialParams); // assert - expect(result, Right(tPartialSettings)); + expect(result, Right(tPartialSettings)); result.fold( (failure) => fail('Should not return failure'), (settings) { @@ -228,13 +228,13 @@ void main() { final tParamsWithExtra = ImportSettingsParams(data: tDataWithExtra); when(() => mockRepository.importSettings(tDataWithExtra)) - .thenAnswer((_) async => const Right(tImportedSettings)); + .thenAnswer((_) async => const Right(tImportedSettings)); // act final result = await usecase(tParamsWithExtra); // assert - expect(result, const Right(tImportedSettings)); + expect(result, const Right(tImportedSettings)); verify(() => mockRepository.importSettings(tDataWithExtra)).called(1); }); @@ -247,13 +247,13 @@ void main() { final tDefaultSettings = AppSettings.defaults(); const tEmptyParams = ImportSettingsParams(data: tEmptyData); when(() => mockRepository.importSettings(tEmptyData)) - .thenAnswer((_) async => Right(tDefaultSettings)); + .thenAnswer((_) async => Right(tDefaultSettings)); // act final result = await usecase(tEmptyParams); // assert - expect(result, Right(tDefaultSettings)); + expect(result, Right(tDefaultSettings)); result.fold( (failure) => fail('Should not return failure'), (settings) { @@ -268,7 +268,7 @@ void main() { test('should pass correct import data to repository', () async { // arrange when(() => mockRepository.importSettings(any())) - .thenAnswer((_) async => const Right(tImportedSettings)); + .thenAnswer((_) async => const Right(tImportedSettings)); // act await usecase(tParams); @@ -290,13 +290,13 @@ void main() { statusCode: 400, ); when(() => mockRepository.importSettings(tMalformedData)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tMalformedParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.importSettings(tMalformedData)).called(1); }); @@ -307,13 +307,13 @@ void main() { statusCode: 403, ); when(() => mockRepository.importSettings(tImportData)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.importSettings(tImportData)).called(1); verifyNoMoreInteractions(mockRepository); }); diff --git a/test/features/settings/domain/usecases/reset_settings_test.dart b/test/features/settings/domain/usecases/reset_settings_test.dart index 139a0d4..21b2b2d 100644 --- a/test/features/settings/domain/usecases/reset_settings_test.dart +++ b/test/features/settings/domain/usecases/reset_settings_test.dart @@ -21,13 +21,13 @@ void main() { test('should reset settings to defaults successfully', () async { // arrange when(() => mockRepository.resetSettings()) - .thenAnswer((_) async => const Right(null)); + .thenAnswer((_) async => const Right(null)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Right(null)); + expect(result, const Right(null)); verify(() => mockRepository.resetSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -39,13 +39,13 @@ void main() { statusCode: 500, ); when(() => mockRepository.resetSettings()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.resetSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -56,13 +56,13 @@ void main() { message: 'Failed to clear settings cache', ); when(() => mockRepository.resetSettings()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.resetSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -74,13 +74,13 @@ void main() { statusCode: 503, ); when(() => mockRepository.resetSettings()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.resetSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -88,7 +88,7 @@ void main() { test('should handle successful reset with void return type', () async { // arrange when(() => mockRepository.resetSettings()) - .thenAnswer((_) async => const Right(null)); + .thenAnswer((_) async => const Right(null)); // act final result = await usecase(const NoParams()); @@ -105,7 +105,7 @@ void main() { test('should call repository method once', () async { // arrange when(() => mockRepository.resetSettings()) - .thenAnswer((_) async => const Right(null)); + .thenAnswer((_) async => const Right(null)); // act await usecase(const NoParams()); @@ -122,13 +122,13 @@ void main() { statusCode: 403, ); when(() => mockRepository.resetSettings()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.resetSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -140,15 +140,15 @@ void main() { statusCode: 400, ); when(() => mockRepository.resetSettings()) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(const NoParams()); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.resetSettings()).called(1); verifyNoMoreInteractions(mockRepository); }); }); -} \ No newline at end of file +} diff --git a/test/features/settings/domain/usecases/update_settings_test.dart b/test/features/settings/domain/usecases/update_settings_test.dart index 60252c8..fbbc25b 100644 --- a/test/features/settings/domain/usecases/update_settings_test.dart +++ b/test/features/settings/domain/usecases/update_settings_test.dart @@ -33,13 +33,13 @@ void main() { test('should update settings successfully', () async { // arrange when(() => mockRepository.updateSettings(tUpdatedSettings)) - .thenAnswer((_) async => Right(tUpdatedSettings)); + .thenAnswer((_) async => Right(tUpdatedSettings)); // act final result = await usecase(tParams); // assert - expect(result, Right(tUpdatedSettings)); + expect(result, Right(tUpdatedSettings)); verify(() => mockRepository.updateSettings(tUpdatedSettings)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -47,7 +47,7 @@ void main() { test('should return updated settings with all changes applied', () async { // arrange when(() => mockRepository.updateSettings(tUpdatedSettings)) - .thenAnswer((_) async => Right(tUpdatedSettings)); + .thenAnswer((_) async => Right(tUpdatedSettings)); // act final result = await usecase(tParams); @@ -73,13 +73,13 @@ void main() { statusCode: 500, ); when(() => mockRepository.updateSettings(tUpdatedSettings)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.updateSettings(tUpdatedSettings)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -91,13 +91,13 @@ void main() { statusCode: 400, ); when(() => mockRepository.updateSettings(tUpdatedSettings)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.updateSettings(tUpdatedSettings)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -108,13 +108,13 @@ void main() { message: 'Failed to save settings to cache', ); when(() => mockRepository.updateSettings(tUpdatedSettings)) - .thenAnswer((_) async => const Left(tFailure)); + .thenAnswer((_) async => const Left(tFailure)); // act final result = await usecase(tParams); // assert - expect(result, const Left(tFailure)); + expect(result, const Left(tFailure)); verify(() => mockRepository.updateSettings(tUpdatedSettings)).called(1); verifyNoMoreInteractions(mockRepository); }); @@ -126,13 +126,13 @@ void main() { ); final tSingleParams = UpdateSettingsParams(settings: tSingleUpdate); when(() => mockRepository.updateSettings(tSingleUpdate)) - .thenAnswer((_) async => Right(tSingleUpdate)); + .thenAnswer((_) async => Right(tSingleUpdate)); // act final result = await usecase(tSingleParams); // assert - expect(result, Right(tSingleUpdate)); + expect(result, Right(tSingleUpdate)); result.fold( (failure) => fail('Should not return failure'), (settings) { @@ -168,13 +168,13 @@ void main() { ); const tCompleteParams = UpdateSettingsParams(settings: tCompleteUpdate); when(() => mockRepository.updateSettings(tCompleteUpdate)) - .thenAnswer((_) async => const Right(tCompleteUpdate)); + .thenAnswer((_) async => const Right(tCompleteUpdate)); // act final result = await usecase(tCompleteParams); // assert - expect(result, const Right(tCompleteUpdate)); + expect(result, const Right(tCompleteUpdate)); result.fold( (failure) => fail('Should not return failure'), (settings) { @@ -203,7 +203,7 @@ void main() { test('should pass correct settings to repository', () async { // arrange when(() => mockRepository.updateSettings(any())) - .thenAnswer((_) async => Right(tUpdatedSettings)); + .thenAnswer((_) async => Right(tUpdatedSettings)); // act await usecase(tParams); @@ -222,13 +222,13 @@ void main() { ); final tExtremeParams = UpdateSettingsParams(settings: tExtremeSettings); when(() => mockRepository.updateSettings(tExtremeSettings)) - .thenAnswer((_) async => Right(tExtremeSettings)); + .thenAnswer((_) async => Right(tExtremeSettings)); // act final result = await usecase(tExtremeParams); // assert - expect(result, Right(tExtremeSettings)); + expect(result, Right(tExtremeSettings)); result.fold( (failure) => fail('Should not return failure'), (settings) { diff --git a/test/mock_data_test.dart b/test/mock_data_test.dart index d0affe4..77f291b 100644 --- a/test/mock_data_test.dart +++ b/test/mock_data_test.dart @@ -44,26 +44,9 @@ void main() { for (final room in rooms) { expect(room.id, isNotEmpty); expect(room.name, isNotEmpty); - expect(room.building, isNotEmpty); - expect(room.floor, isNotEmpty); - // Device counts are no longer part of RoomModel - // They are calculated in the presentation layer - - // Check enterprise building names - expect(room.building, isIn([ - 'Corporate Headquarters', - 'Technology Center', - 'Research & Development', - 'Manufacturing East', - 'Manufacturing West', - 'Distribution Center', - 'Data Center Primary', - 'Data Center Secondary', - 'Executive Building', - 'Training Facility', - 'Customer Center', - 'Support Operations', - ])); + expect(room.metadata, isNotNull); + expect(room.metadata!['area_sqft'], isNotNull); + expect(room.metadata!['department'], isNotNull); } }); @@ -140,4 +123,4 @@ void main() { expect(typeCounts.keys.length, equals(3)); }); }); -} \ No newline at end of file +} diff --git a/test/optimization_verification_test.dart b/test/optimization_verification_test.dart index 441cf68..77cbd56 100644 --- a/test/optimization_verification_test.dart +++ b/test/optimization_verification_test.dart @@ -54,7 +54,7 @@ void main() { final sequentialResults = >>[]; for (final type in deviceTypes) { - await Future.delayed(const Duration(milliseconds: 100)); // Simulate API delay + await Future.delayed(const Duration(milliseconds: 100)); // Simulate API delay sequentialResults.add([{'id': type, 'name': 'Device for $type'}]); } sequentialStopwatch.stop(); @@ -62,7 +62,7 @@ void main() { // Parallel approach (optimized) final parallelStopwatch = Stopwatch()..start(); final parallelFutures = deviceTypes.map((type) async { - await Future.delayed(const Duration(milliseconds: 100)); // Same API delay + await Future.delayed(const Duration(milliseconds: 100)); // Same API delay return [{'id': type, 'name': 'Device for $type'}]; }); final parallelResults = await Future.wait(parallelFutures); @@ -97,7 +97,7 @@ void main() { // Process batch in parallel final batchFutures = batch.map((page) async { - await Future.delayed(const Duration(milliseconds: 50)); // API delay + await Future.delayed(const Duration(milliseconds: 50)); // API delay return 'Page $page data'; }); @@ -105,7 +105,7 @@ void main() { allResults.addAll(batchResults); // Small delay between batches to be server-friendly - await Future.delayed(const Duration(milliseconds: 10)); + await Future.delayed(const Duration(milliseconds: 10)); } batchStopwatch.stop(); @@ -138,7 +138,7 @@ void main() { expect(isCacheValid(), isTrue); // Wait for cache to expire - await Future.delayed(const Duration(milliseconds: 150)); + await Future.delayed(const Duration(milliseconds: 150)); // Cache should now be expired expect(isCacheValid(), isFalse); @@ -210,7 +210,7 @@ void main() { stopwatch.stop(); // Wait for stream events - await Future.delayed(const Duration(milliseconds: 50)); + await Future.delayed(const Duration(milliseconds: 50)); // Verify parallel execution (should be fast) expect(stopwatch.elapsedMilliseconds, lessThan(200)); @@ -247,7 +247,7 @@ void main() { // Perform refresh - should not throw await backgroundRefreshService.refreshNow(); - await Future.delayed(const Duration(milliseconds: 50)); + await Future.delayed(const Duration(milliseconds: 50)); // Devices should have error, rooms should succeed expect(deviceEvents.where((e) => e.isError).length, equals(1)); @@ -265,7 +265,7 @@ void main() { pageSize: 10, fetchPage: (page, pageSize) async { apiCallCount++; - await Future.delayed(const Duration(milliseconds: 50)); // Simulate API delay + await Future.delayed(const Duration(milliseconds: 50)); // Simulate API delay final startIndex = (page - 1) * pageSize; return List.generate(pageSize, (i) => 'Item ${startIndex + i + 1}'); @@ -310,7 +310,7 @@ void main() { pageSize: 10, cachePages: true, fetchPage: (page, pageSize) async { - await Future.delayed(const Duration(milliseconds: 50)); + await Future.delayed(const Duration(milliseconds: 50)); return List.generate(10, (i) => 'Page $page Item ${i + 1}'); }, ); @@ -347,17 +347,17 @@ void main() { // Perform various operations await performanceMonitor.trackFuture('fast_operation', () async { - await Future.delayed(const Duration(milliseconds: 50)); + await Future.delayed(const Duration(milliseconds: 50)); return 'fast result'; }); await performanceMonitor.trackFuture('slow_operation', () async { - await Future.delayed(const Duration(milliseconds: 200)); + await Future.delayed(const Duration(milliseconds: 200)); return 'slow result'; }); await performanceMonitor.trackFuture('fast_operation', () async { - await Future.delayed(const Duration(milliseconds: 60)); + await Future.delayed(const Duration(milliseconds: 60)); return 'fast result 2'; }); @@ -394,15 +394,15 @@ void main() { // Track parallel operations final results = await performanceMonitor.trackParallel('parallel_test', [ () async { - await Future.delayed(const Duration(milliseconds: 100)); + await Future.delayed(const Duration(milliseconds: 100)); return 'result1'; }, () async { - await Future.delayed(const Duration(milliseconds: 80)); + await Future.delayed(const Duration(milliseconds: 80)); return 'result2'; }, () async { - await Future.delayed(const Duration(milliseconds: 120)); + await Future.delayed(const Duration(milliseconds: 120)); return 'result3'; }, ]); @@ -434,19 +434,19 @@ void main() { final results = await performanceMonitor.trackParallel('dashboard_load', [ // Device data with caching () async { - await Future.delayed(const Duration(milliseconds: 50)); // Cache hit simulation + await Future.delayed(const Duration(milliseconds: 50)); // Cache hit simulation return 'devices_cached'; }, // Background refresh of rooms () async { - await Future.delayed(const Duration(milliseconds: 80)); // API call + await Future.delayed(const Duration(milliseconds: 80)); // API call return 'rooms_refreshed'; }, // Paginated notifications () async { - await Future.delayed(const Duration(milliseconds: 60)); // First page cached + await Future.delayed(const Duration(milliseconds: 60)); // First page cached return 'notifications_paginated'; }, ]); @@ -488,7 +488,7 @@ void main() { futures.add( performanceMonitor.trackFuture('concurrent_$i', () async { // Simulate I/O operation - await Future.delayed(Duration(milliseconds: 100 + (i * 10))); + await Future.delayed(Duration(milliseconds: 100 + (i * 10))); return 'result_$i'; }) ); @@ -496,7 +496,7 @@ void main() { // This should not be blocked by the futures above final quickWork = performanceMonitor.trackFuture('quick_work', () async { - await Future.delayed(const Duration(milliseconds: 20)); + await Future.delayed(const Duration(milliseconds: 20)); return 'quick_result'; }); diff --git a/test/parallel_error_handling_test.dart b/test/parallel_error_handling_test.dart index 22ebc3f..7766d96 100644 --- a/test/parallel_error_handling_test.dart +++ b/test/parallel_error_handling_test.dart @@ -341,7 +341,9 @@ void main() { } // Wait with exponential backoff - await Future.delayed(Duration(milliseconds: delays[attemptCount - 1])); + await Future.delayed( + Duration(milliseconds: delays[attemptCount - 1]), + ); } } @@ -453,4 +455,4 @@ void main() { }); }); }); -} \ No newline at end of file +} diff --git a/test/performance_tests.dart b/test/performance_tests.dart index 40e0373..da33800 100644 --- a/test/performance_tests.dart +++ b/test/performance_tests.dart @@ -233,7 +233,7 @@ void main() { await backgroundRefreshService.refreshNow(); // Wait for streams to emit events - await Future.delayed(const Duration(milliseconds: 100)); + await Future.delayed(const Duration(milliseconds: 100)); // Assert expect(deviceRefreshEvents.length, greaterThanOrEqualTo(2)); // refreshing + success @@ -257,7 +257,7 @@ void main() { // Act await backgroundRefreshService.refreshNow(); - await Future.delayed(const Duration(milliseconds: 100)); + await Future.delayed(const Duration(milliseconds: 100)); // Assert expect(deviceRefreshEvents.any((event) => event.isError), isTrue); @@ -292,7 +292,7 @@ void main() { // Act backgroundRefreshService.startBackgroundRefresh(); - await Future.delayed(const Duration(milliseconds: 100)); + await Future.delayed(const Duration(milliseconds: 100)); backgroundRefreshService.stopBackgroundRefresh(); // Assert - verify timer was set up (indirect test through no exceptions) @@ -308,7 +308,7 @@ void main() { pageSize: 10, fetchPage: (page, pageSize) async { // Simulate API delay - await Future.delayed(const Duration(milliseconds: 50)); + await Future.delayed(const Duration(milliseconds: 50)); // Return mock data for testing final startIndex = (page - 1) * pageSize; @@ -392,7 +392,7 @@ void main() { // Act await paginationService.loadNextPage(); - await Future.delayed(const Duration(milliseconds: 50)); + await Future.delayed(const Duration(milliseconds: 50)); // Assert expect(stateUpdates.length, greaterThanOrEqualTo(1)); @@ -441,7 +441,7 @@ void main() { final duration = await performanceMonitor.trackFuture( 'test_operation', () async { - await Future.delayed(const Duration(milliseconds: 100)); + await Future.delayed(const Duration(milliseconds: 100)); return 'success'; }, ); @@ -479,15 +479,15 @@ void main() { 'parallel_test', [ () async { - await Future.delayed(const Duration(milliseconds: 50)); + await Future.delayed(const Duration(milliseconds: 50)); return 'result1'; }, () async { - await Future.delayed(const Duration(milliseconds: 75)); + await Future.delayed(const Duration(milliseconds: 75)); return 'result2'; }, () async { - await Future.delayed(const Duration(milliseconds: 25)); + await Future.delayed(const Duration(milliseconds: 25)); return 'result3'; }, ], @@ -506,12 +506,12 @@ void main() { test('should generate performance report', () async { // Arrange - create some performance data await performanceMonitor.trackFuture('fast_operation', () async { - await Future.delayed(const Duration(milliseconds: 50)); + await Future.delayed(const Duration(milliseconds: 50)); return 'fast'; }); await performanceMonitor.trackFuture('slow_operation', () async { - await Future.delayed(const Duration(milliseconds: 1200)); + await Future.delayed(const Duration(milliseconds: 1200)); return 'slow'; }); @@ -530,7 +530,7 @@ void main() { // Arrange - create multiple samples for (var i = 0; i < 10; i++) { await performanceMonitor.trackFuture('stats_test', () async { - await Future.delayed(Duration(milliseconds: 50 + (i * 10))); + await Future.delayed(Duration(milliseconds: 50 + (i * 10))); return 'sample $i'; }); } @@ -553,7 +553,7 @@ void main() { // Act - start multiple operations concurrently final futures = List.generate(5, (i) => performanceMonitor.trackFuture('concurrent_op_$i', () async { - await Future.delayed(Duration(milliseconds: 50 + (i * 10))); + await Future.delayed(Duration(milliseconds: 50 + (i * 10))); return 'result $i'; }) ); From ee2292744ecb1371b93d5d7f8c43ba7ce9c5faf7 Mon Sep 17 00:00:00 2001 From: Zachary Wilhite Date: Thu, 9 Oct 2025 10:43:41 -0700 Subject: [PATCH 3/6] Development on pause while waiting for more websocket backend --- .DS_Store | Bin 8196 -> 10244 bytes .github/workflows/ws-handshake-smoke.yml | 39 ++ .../2025-10-08-websocket-auth-progress.md | 34 + docs/changes/phase2-websocket-testing.md | 41 ++ lib/core/config/environment.dart | 107 +++- lib/core/providers/core_providers.dart | 77 ++- lib/core/providers/repository_providers.dart | 9 - lib/core/providers/websocket_providers.dart | 60 ++ lib/core/services/api_service.dart | 12 +- .../services/background_refresh_service.dart | 2 +- lib/core/services/storage_service.dart | 176 +++++- lib/core/services/websocket_service.dart | 349 +++++++++++ lib/core/utils/qr_decoder.dart | 12 +- .../datasources/auth_local_data_source.dart | 44 +- .../auth/data/models/auth_attempt.dart | 58 ++ .../data/repositories/auth_repository.dart | 63 +- .../domain/repositories/auth_repository.dart | 5 +- .../domain/usecases/authenticate_user.dart | 20 +- .../presentation/providers/auth_notifier.dart | 314 ++++++++-- .../presentation/screens/auth_screen.dart | 465 ++++++++------ .../widgets/credential_approval_sheet.dart | 324 ++++++++++ .../data/repositories/device_repository.dart | 15 + .../repositories/room_repository_impl.dart | 3 +- .../domain/usecases/process_auth_qr.dart | 219 +++++-- .../presentation/screens/scanner_screen.dart | 590 +++++++++++------- .../presentation/screens/splash_screen.dart | 167 +++-- lib/main_staging_debug.dart | 62 -- pubspec.lock | 2 +- pubspec.yaml | 1 + scripts/run_fake_gateway.sh | 16 + .../features/auth/credential_sheets_test.dart | 55 ++ .../scanner/process_auth_qr_test.dart | 144 +++++ tool/fake_websocket_gateway.dart | 331 ++++++++++ tool/ws_auth_smoke.dart | 101 +++ 34 files changed, 3126 insertions(+), 791 deletions(-) create mode 100644 .github/workflows/ws-handshake-smoke.yml create mode 100644 docs/changes/2025-10-08-websocket-auth-progress.md create mode 100644 docs/changes/phase2-websocket-testing.md create mode 100644 lib/core/providers/websocket_providers.dart create mode 100644 lib/core/services/websocket_service.dart create mode 100644 lib/features/auth/data/models/auth_attempt.dart create mode 100644 lib/features/auth/presentation/widgets/credential_approval_sheet.dart delete mode 100644 lib/main_staging_debug.dart create mode 100755 scripts/run_fake_gateway.sh create mode 100644 test/features/auth/credential_sheets_test.dart create mode 100644 test/features/scanner/process_auth_qr_test.dart create mode 100644 tool/fake_websocket_gateway.dart create mode 100644 tool/ws_auth_smoke.dart diff --git a/.DS_Store b/.DS_Store index fcb0479938e10295e07767f4ae177836340f453e..94979905e5201cfb7888e528471ef917160e465f 100644 GIT binary patch literal 10244 zcmeHM&2Jk;6o2D5wVjXFY2(rYl`JA8q^2Qhqm-(u>Nu%NfRZQ>h6YK_j3M&^YyAM&Vz7DBogP#HS#kVgQ}BtFZ6HqHT3CLhv5NcRFN zMWHh|J+M%eg+~k)h@(F**g*>+-3w?SPAm{77FuTE357}PkjqPUVugU}r$#^{(2IaL zyARP6)yN=MJ-;v6yjrn&1^r@6&0|ab`j;$H$vMc>amsH)#wQc97pNuQ8)T6~9^PyC z-a>U`%b_ZIO!8uyzm926LbK4}NBP*F;CoLQL8{9~4>5{LA8vKLVvbTPG&e9JjuD$t znZ!4+@V;Up2TUAPo3=3@3$+Zn7UpY#iaAc9$Dk(JQBCwNFuJB_N=Z#M*yNC{#khY5 z_mskY4BQ_6OjwGc#mX_>ag`V2Yf4KN)&@vJ{*V!}A7Xk2sR9%&%r!Q;!~#&+RYs?9 zRytlQ^pVGvmTh_d^z@G`F_0WQmP)76!|8jahrCnr4ZrOb4fl?CTjSiWblXPdwq&Mq4G~w@;;VQL>Q(Q|&;q@NJ@y7I(hXQ@_N>BJF)L~8CQe&eWfv>ni2E{i z!2g-DYB{+Fx8M=M?c9I%Wd?*IV@*O6hjs7f>dJK6^Icd<((4#S6QdFBu)mL&f1!+M zpHK0kZ=bjqJ-xGYVP%AtPr2|D*@WL3AqeZju#&gkcCw!1Sj zL&GDZ$4_L(PM#VYAIs%(r=QB5IeYe*a`sfksBSh~;qeRH=5En$o9kAUJ0T*kTdACj11MQJn-!NR)a2jTD`<`u7OnccWa^L4o!6~$1 zA}g*bG)dc~mQl5w#>DmCB(^kBSm`!i2pUySbP|enIOKqMT}NGeE?Cw>d8fP!e_e7qGNE}DJ6Zu=_M&!FXqRl48Y4v7dfm=j2g?UvWZ^<0q2fGM&60uU| z(AeDPp;i4IGTPv+6~>v(yH!?$U)WkI_j8lZatMGNJL|1&^b UF9o+q`us2M0`&Qxj@tSEZ=R5Ty#N3J delta 151 zcmZn(XmOBWU|?W$DortDU;r^WfEYvza8E20o2aKKDhZMY@);N^8HyP)fjFKae`Db^ z_K6L=o7p*7I2a{2s|a#3GFore6Vhj#JW)7la;%8PW>0ZDrp@ame=!L%15E$|32q?a k3Nm?P;dkcA{3?MQKyyL%F-(r _environment; - + static String get name => _environment.name; - + static bool get isDevelopment => _environment == Environment.development; static bool get isStaging => _environment == Environment.staging; static bool get isProduction => _environment == Environment.production; - + /// API Configuration static String get apiBaseUrl { switch (_environment) { case Environment.development: // Development uses synthetic/mock data, no real API - return const String.fromEnvironment('DEV_API_URL', - defaultValue: 'http://mock-api.local'); + return const String.fromEnvironment( + 'DEV_API_URL', + defaultValue: 'http://mock-api.local', + ); case Environment.staging: // Staging uses the interurban test environment return 'https://vgw1-01.dal-interurban.mdu.attwifi.com'; case Environment.production: // Production will use real customer URL (provided at runtime) - return const String.fromEnvironment('API_URL', - defaultValue: 'https://api.rgnets.com'); + return const String.fromEnvironment( + 'API_URL', + defaultValue: 'https://api.rgnets.com', + ); } } - + + /// WebSocket configuration + static String get websocketBaseUrl { + switch (_environment) { + case Environment.development: + return const String.fromEnvironment( + 'DEV_WS_URL', + defaultValue: 'ws://localhost:9443/ws', + ); + case Environment.staging: + return const String.fromEnvironment( + 'STAGING_WS_URL', + defaultValue: 'wss://zew.netlab.ninja/ws', + ); + case Environment.production: + return const String.fromEnvironment( + 'WS_URL', + defaultValue: 'wss://zew.netlab.ninja/ws', + ); + } + } + + static bool get useWebSockets { + const envFlag = bool.fromEnvironment('USE_WEBSOCKETS', defaultValue: true); + return envFlag; + } + + static bool get enableRestFallback { + const envFlag = bool.fromEnvironment( + 'USE_REST_FALLBACK', + defaultValue: true, + ); + return envFlag; + } + + static Duration get webSocketInitialReconnectDelay => const Duration( + milliseconds: int.fromEnvironment( + 'WS_RECONNECT_BASE_MS', + defaultValue: 1000, + ), + ); + + static Duration get webSocketMaxReconnectDelay => const Duration( + milliseconds: int.fromEnvironment( + 'WS_RECONNECT_MAX_MS', + defaultValue: 32000, + ), + ); + + static Duration get webSocketHeartbeatInterval => const Duration( + seconds: int.fromEnvironment('WS_HEARTBEAT_INTERVAL_S', defaultValue: 30), + ); + + static Duration get webSocketHeartbeatTimeout => const Duration( + seconds: int.fromEnvironment('WS_HEARTBEAT_TIMEOUT_S', defaultValue: 45), + ); + /// Feature flags static bool get enableLogging => !isProduction; - static bool get useSyntheticData => isDevelopment; // Only debug uses synthetic + static bool get useSyntheticData => + isDevelopment; // Only debug uses synthetic static bool get enableDebugBanner => isDevelopment; static bool get enablePerformanceOverlay => isDevelopment; - + /// API Credentials static String get apiUsername { switch (_environment) { @@ -63,7 +123,7 @@ class EnvironmentConfig { return const String.fromEnvironment('API_USERNAME', defaultValue: ''); } } - + static String get apiKey { switch (_environment) { case Environment.development: @@ -72,8 +132,9 @@ class EnvironmentConfig { // For staging, use environment variable with fallback to known staging key // This ensures staging works even without explicit environment variables const stagingKey = String.fromEnvironment( - 'STAGING_API_KEY', - defaultValue: 'xWCH1KHxwjHRZtNbyBDTrGQw1gDry98ChcXM7bpLbKaTUHZzUUBsCb77SHrJNHUKGLAKgmykxsxsAg6r' + 'STAGING_API_KEY', + defaultValue: + 'xWCH1KHxwjHRZtNbyBDTrGQw1gDry98ChcXM7bpLbKaTUHZzUUBsCb77SHrJNHUKGLAKgmykxsxsAg6r', ); return stagingKey; case Environment.production: @@ -84,7 +145,7 @@ class EnvironmentConfig { return key; } } - + /// Sentry DSN static String get sentryDsn { if (isDevelopment) { @@ -92,4 +153,4 @@ class EnvironmentConfig { } return const String.fromEnvironment('SENTRY_DSN', defaultValue: ''); } -} \ No newline at end of file +} diff --git a/lib/core/providers/core_providers.dart b/lib/core/providers/core_providers.dart index 1edd0a1..1265702 100644 --- a/lib/core/providers/core_providers.dart +++ b/lib/core/providers/core_providers.dart @@ -13,12 +13,9 @@ import 'package:shared_preferences/shared_preferences.dart'; final loggerProvider = Provider((ref) { // Disable logging in production if (EnvironmentConfig.isProduction) { - return Logger( - level: Level.off, - printer: PrettyPrinter(methodCount: 0), - ); + return Logger(level: Level.off, printer: PrettyPrinter(methodCount: 0)); } - + return Logger( printer: PrettyPrinter( methodCount: 2, @@ -33,34 +30,40 @@ final loggerProvider = Provider((ref) { /// SharedPreferences provider final sharedPreferencesProvider = Provider((ref) { - throw UnimplementedError('SharedPreferences must be overridden with override'); + throw UnimplementedError( + 'SharedPreferences must be overridden with override', + ); }); /// Dio HTTP client provider final dioProvider = Provider((ref) { - final dio = Dio(BaseOptions( - connectTimeout: const Duration(seconds: 30), - receiveTimeout: const Duration(seconds: 30), - headers: { - 'Content-Type': 'application/json', - 'Accept': 'application/json', - }, - )); - + final dio = Dio( + BaseOptions( + connectTimeout: const Duration(seconds: 30), + receiveTimeout: const Duration(seconds: 30), + headers: { + 'Content-Type': 'application/json', + 'Accept': 'application/json', + }, + ), + ); + // Add interceptors for logging only in development if (EnvironmentConfig.isDevelopment) { final logger = ref.watch(loggerProvider); - dio.interceptors.add(LogInterceptor( - request: true, - requestHeader: true, - requestBody: true, - responseHeader: true, - responseBody: true, - error: true, - logPrint: (object) => logger.d(object.toString()), - )); + dio.interceptors.add( + LogInterceptor( + request: true, + requestHeader: true, + requestBody: true, + responseHeader: true, + responseBody: true, + error: true, + logPrint: (object) => logger.d(object.toString()), + ), + ); } - + return dio; }); @@ -74,11 +77,8 @@ final storageServiceProvider = Provider((ref) { final apiServiceProvider = Provider((ref) { final dio = ref.watch(dioProvider); final storage = ref.watch(storageServiceProvider); - - return ApiService( - dio: dio, - storageService: storage, - ); + + return ApiService(dio: dio, storageService: storage); }); /// Performance monitor service provider (singleton) @@ -89,23 +89,22 @@ final performanceMonitorProvider = Provider((ref) { // Background refresh service provider moved to repository_providers.dart // because it depends on data sources and repositories -/// Mock data service provider +/// Mock data service provider final mockDataServiceProvider = Provider((ref) { return MockDataService(); }); /// Notification generation service provider -final notificationGenerationServiceProvider = Provider((ref) { - return NotificationGenerationService(); -}); +final notificationGenerationServiceProvider = + Provider((ref) { + return NotificationGenerationService(); + }); /// Initialize providers that need async initialization Future initializeProviders() async { final sharedPreferences = await SharedPreferences.getInstance(); - + return ProviderContainer( - overrides: [ - sharedPreferencesProvider.overrideWithValue(sharedPreferences), - ], + overrides: [sharedPreferencesProvider.overrideWithValue(sharedPreferences)], ); -} \ No newline at end of file +} diff --git a/lib/core/providers/repository_providers.dart b/lib/core/providers/repository_providers.dart index 100b3dc..89c0a37 100644 --- a/lib/core/providers/repository_providers.dart +++ b/lib/core/providers/repository_providers.dart @@ -4,7 +4,6 @@ import 'package:rgnets_fdk/core/config/environment.dart'; import 'package:rgnets_fdk/core/providers/core_providers.dart'; import 'package:rgnets_fdk/core/services/background_refresh_service.dart'; import 'package:rgnets_fdk/features/auth/data/datasources/auth_local_data_source.dart'; -import 'package:rgnets_fdk/features/auth/data/datasources/auth_remote_data_source.dart'; import 'package:rgnets_fdk/features/auth/data/repositories/auth_repository.dart' as auth_impl; import 'package:rgnets_fdk/features/auth/domain/repositories/auth_repository.dart'; @@ -39,12 +38,6 @@ final authLocalDataSourceProvider = Provider((ref) { return AuthLocalDataSourceImpl(storageService: storage); }); -/// Auth remote data source provider -final authRemoteDataSourceProvider = Provider((ref) { - final apiService = ref.watch(apiServiceProvider); - return AuthRemoteDataSourceImpl(apiService: apiService); -}); - /// Device local data source provider final deviceLocalDataSourceProvider = Provider((ref) { final storage = ref.watch(storageServiceProvider); @@ -93,12 +86,10 @@ final roomMockDataSourceProvider = Provider((ref) { /// Auth repository provider final authRepositoryProvider = Provider((ref) { - final remoteDataSource = ref.watch(authRemoteDataSourceProvider); final localDataSource = ref.watch(authLocalDataSourceProvider); final mockDataService = ref.watch(mockDataServiceProvider); return auth_impl.AuthRepositoryImpl( - remoteDataSource: remoteDataSource, localDataSource: localDataSource, mockDataService: mockDataService, ); diff --git a/lib/core/providers/websocket_providers.dart b/lib/core/providers/websocket_providers.dart new file mode 100644 index 0000000..66c09cb --- /dev/null +++ b/lib/core/providers/websocket_providers.dart @@ -0,0 +1,60 @@ +import 'package:flutter_riverpod/flutter_riverpod.dart'; +import 'package:rgnets_fdk/core/config/environment.dart'; +import 'package:rgnets_fdk/core/providers/core_providers.dart'; +import 'package:rgnets_fdk/core/services/websocket_service.dart'; + +/// Provides the base WebSocket configuration derived from the environment. +final webSocketConfigProvider = Provider((ref) { + final uri = Uri.parse(EnvironmentConfig.websocketBaseUrl); + return WebSocketConfig( + baseUri: uri, + autoReconnect: EnvironmentConfig.useWebSockets, + initialReconnectDelay: EnvironmentConfig.webSocketInitialReconnectDelay, + maxReconnectDelay: EnvironmentConfig.webSocketMaxReconnectDelay, + heartbeatInterval: EnvironmentConfig.webSocketHeartbeatInterval, + heartbeatTimeout: EnvironmentConfig.webSocketHeartbeatTimeout, + ); +}); + +/// Provides a singleton [WebSocketService] for the application lifecycle. +final webSocketServiceProvider = Provider((ref) { + final config = ref.watch(webSocketConfigProvider); + final logger = ref.watch(loggerProvider); + + final service = WebSocketService(config: config, logger: logger); + final stateSub = service.connectionState.listen((state) { + logger.i('WebSocketService: state -> ${state.name}'); + }); + final messageSub = service.messages.listen((message) { + logger.d('WebSocketService: message type=${message.type}'); + }); + + ref.onDispose(() { + stateSub.cancel(); + messageSub.cancel(); + service.dispose(); + }); + return service; +}); + +/// Exposes the connection state as a Riverpod stream provider so UI can react. +final webSocketConnectionStateProvider = StreamProvider(( + ref, +) { + final service = ref.watch(webSocketServiceProvider); + return service.connectionState; +}); + +/// Exposes the last socket message for debugging / instrumentation. +final webSocketLastMessageProvider = StreamProvider((ref) { + final service = ref.watch(webSocketServiceProvider); + return service.messages; +}); + +/// Emits only authentication-related socket messages. +final webSocketAuthEventsProvider = StreamProvider((ref) { + final service = ref.watch(webSocketServiceProvider); + return service.messages.where( + (message) => message.type.startsWith('auth.'), + ); +}); diff --git a/lib/core/services/api_service.dart b/lib/core/services/api_service.dart index b12b214..68d9830 100644 --- a/lib/core/services/api_service.dart +++ b/lib/core/services/api_service.dart @@ -68,19 +68,19 @@ class ApiService { // Add base URL final apiUrl = _storageService.apiUrl; - if (apiUrl != null && EnvironmentConfig.isProduction) { - // Production uses stored URL + if (apiUrl != null && apiUrl.isNotEmpty) { options.baseUrl = apiUrl; _logger.d('API_SERVICE: Using stored API URL: $apiUrl'); } else { - // Use environment-specific URL options.baseUrl = EnvironmentConfig.apiBaseUrl; - _logger.d('API_SERVICE: Using environment API URL: ${options.baseUrl}'); + _logger.d( + 'API_SERVICE: Using environment API URL: ${options.baseUrl}', + ); } // Note: Staging uses Basic Auth, not api_key parameter // Production may need api_key parameter depending on configuration - if (EnvironmentConfig.isProduction) { + if (apiUrl != null && apiUrl.isNotEmpty) { final apiKeyValue = _storageService.apiToken ?? ''; if (apiKeyValue.isNotEmpty && !options.path.contains('api_key=')) { // Add api_key as query parameter for production @@ -348,4 +348,4 @@ class ApiService { _dio.options.baseUrl = 'https://${testCreds['fqdn']}'; _dio.options.headers['Authorization'] = 'Bearer ${testCreds['apiKey']}'; } -} \ No newline at end of file +} diff --git a/lib/core/services/background_refresh_service.dart b/lib/core/services/background_refresh_service.dart index c8c127b..3f5f0d7 100644 --- a/lib/core/services/background_refresh_service.dart +++ b/lib/core/services/background_refresh_service.dart @@ -195,4 +195,4 @@ class RefreshStatus { bool get isError => status == RefreshStatusType.error; } -enum RefreshStatusType { idle, refreshing, success, error } \ No newline at end of file +enum RefreshStatusType { idle, refreshing, success, error } diff --git a/lib/core/services/storage_service.dart b/lib/core/services/storage_service.dart index 187fb94..c7332ab 100644 --- a/lib/core/services/storage_service.dart +++ b/lib/core/services/storage_service.dart @@ -1,68 +1,200 @@ +import 'dart:convert'; + +import 'package:rgnets_fdk/features/auth/data/models/auth_attempt.dart'; import 'package:shared_preferences/shared_preferences.dart'; /// Service for managing local storage class StorageService { - StorageService(this._prefs); final SharedPreferences _prefs; - + // Keys static const String _keyApiUrl = 'api_url'; static const String _keyApiToken = 'api_token'; static const String _keyUsername = 'username'; + static const String _keySiteName = 'site_name'; + static const String _keyAuthIssuedAt = 'auth_issued_at'; + static const String _keyAuthSignature = 'auth_signature'; static const String _keyIsAuthenticated = 'is_authenticated'; + static const String _keySessionToken = 'ws_session_token'; + static const String _keySessionExpiresAt = 'ws_session_expires_at'; + static const String _keyAuthAttempts = 'auth_attempts'; static const String _keyThemeMode = 'theme_mode'; static const String _keyEnableNotifications = 'enable_notifications'; static const String _keyAutoSync = 'auto_sync'; static const String _keySyncInterval = 'sync_interval'; - + // Auth Future saveCredentials({ required String apiUrl, required String apiToken, required String username, + String? siteName, + String? issuedAtIso, + String? signature, + bool markAuthenticated = false, }) async { await _prefs.setString(_keyApiUrl, apiUrl); await _prefs.setString(_keyApiToken, apiToken); await _prefs.setString(_keyUsername, username); - await _prefs.setBool(_keyIsAuthenticated, true); + if (siteName != null) { + await _prefs.setString(_keySiteName, siteName); + } + if (issuedAtIso != null) { + await _prefs.setString(_keyAuthIssuedAt, issuedAtIso); + } + if (signature != null) { + await _prefs.setString(_keyAuthSignature, signature); + } + await _prefs.setBool(_keyIsAuthenticated, markAuthenticated); + } + + Future saveSession({ + required String token, + required DateTime expiresAt, + }) async { + await _prefs.setString(_keySessionToken, token); + await _prefs.setString( + _keySessionExpiresAt, + expiresAt.toUtc().toIso8601String(), + ); } - + Future clearCredentials() async { await _prefs.remove(_keyApiUrl); await _prefs.remove(_keyApiToken); await _prefs.remove(_keyUsername); + await _prefs.remove(_keySiteName); + await _prefs.remove(_keyAuthIssuedAt); + await _prefs.remove(_keyAuthSignature); + await clearSession(); await _prefs.setBool(_keyIsAuthenticated, false); } - + + Future setAuthenticated({required bool value}) async { + await _prefs.setBool(_keyIsAuthenticated, value); + } + + Future clearSession() async { + await _prefs.remove(_keySessionToken); + await _prefs.remove(_keySessionExpiresAt); + } + + Future migrateLegacyCredentialsIfNeeded() async { + const legacyFqdnKey = 'att_fe_tool.fqdn'; + const legacyLoginKey = 'att_fe_tool.login'; + const legacyApiKey = 'att_fe_tool.api_key'; + + final hasLegacy = _prefs.containsKey(legacyFqdnKey) && + _prefs.containsKey(legacyLoginKey) && + _prefs.containsKey(legacyApiKey); + if (!hasLegacy) { + return; + } + + final fqdn = _prefs.getString(legacyFqdnKey) ?? ''; + final login = _prefs.getString(legacyLoginKey) ?? ''; + final apiKey = _prefs.getString(legacyApiKey) ?? ''; + + if (fqdn.isNotEmpty && login.isNotEmpty && apiKey.isNotEmpty) { + await saveCredentials( + apiUrl: 'https://$fqdn', + apiToken: apiKey, + username: login, + markAuthenticated: false, + ); + } + + await Future.wait([ + _prefs.remove(legacyFqdnKey), + _prefs.remove(legacyLoginKey), + _prefs.remove(legacyApiKey), + ]); + } + + Future logAuthAttempt(AuthAttempt attempt) async { + final attempts = getAuthAttempts()..insert(0, attempt); + + // Cap history to last 50 attempts to avoid uncontrolled growth + final trimmed = attempts.take(50).toList(); + final payload = trimmed.map((a) => a.toJson()).toList(); + await _prefs.setString(_keyAuthAttempts, jsonEncode(payload)); + } + + List getAuthAttempts() { + final raw = _prefs.getString(_keyAuthAttempts); + if (raw == null || raw.isEmpty) { + return []; + } + try { + final decoded = jsonDecode(raw) as List; + return decoded + .map((dynamic entry) { + if (entry is Map) { + return AuthAttempt.fromJson(entry); + } + if (entry is Map) { + return AuthAttempt.fromJson( + Map.from(entry), + ); + } + return null; + }) + .whereType() + .toList(); + } on Object { + return []; + } + } + String? get apiUrl => _prefs.getString(_keyApiUrl); String? get apiToken => _prefs.getString(_keyApiToken); String? get username => _prefs.getString(_keyUsername); + String? get siteName => _prefs.getString(_keySiteName); + String? get authIssuedAtIso => _prefs.getString(_keyAuthIssuedAt); + DateTime? get authIssuedAt => + authIssuedAtIso != null ? DateTime.tryParse(authIssuedAtIso!) : null; + String? get authSignature => _prefs.getString(_keyAuthSignature); bool get isAuthenticated => _prefs.getBool(_keyIsAuthenticated) ?? false; - + String? get sessionToken => _prefs.getString(_keySessionToken); + DateTime? get sessionExpiresAt { + final iso = _prefs.getString(_keySessionExpiresAt); + if (iso == null) { + return null; + } + return DateTime.tryParse(iso); + } + // Settings String get themeMode => _prefs.getString(_keyThemeMode) ?? 'dark'; - Future setThemeMode(String mode) => _prefs.setString(_keyThemeMode, mode); - - bool get enableNotifications => _prefs.getBool(_keyEnableNotifications) ?? true; - Future setEnableNotifications({required bool value}) => _prefs.setBool(_keyEnableNotifications, value); - + Future setThemeMode(String mode) => + _prefs.setString(_keyThemeMode, mode); + + bool get enableNotifications => + _prefs.getBool(_keyEnableNotifications) ?? true; + Future setEnableNotifications({required bool value}) => + _prefs.setBool(_keyEnableNotifications, value); + bool get autoSync => _prefs.getBool(_keyAutoSync) ?? true; - Future setAutoSync({required bool value}) => _prefs.setBool(_keyAutoSync, value); - + Future setAutoSync({required bool value}) => + _prefs.setBool(_keyAutoSync, value); + int get syncInterval => _prefs.getInt(_keySyncInterval) ?? 15; - Future setSyncInterval(int minutes) => _prefs.setInt(_keySyncInterval, minutes); - + Future setSyncInterval(int minutes) => + _prefs.setInt(_keySyncInterval, minutes); + // Generic methods - Future setBool(String key, {required bool value}) => _prefs.setBool(key, value); + Future setBool(String key, {required bool value}) => + _prefs.setBool(key, value); bool? getBool(String key) => _prefs.getBool(key); - - Future setString(String key, String value) => _prefs.setString(key, value); + + Future setString(String key, String value) => + _prefs.setString(key, value); String? getString(String key) => _prefs.getString(key); - + Future setInt(String key, int value) => _prefs.setInt(key, value); int? getInt(String key) => _prefs.getInt(key); - + Future remove(String key) => _prefs.remove(key); Future clear() => _prefs.clear(); -} \ No newline at end of file +} diff --git a/lib/core/services/websocket_service.dart b/lib/core/services/websocket_service.dart new file mode 100644 index 0000000..5261d2e --- /dev/null +++ b/lib/core/services/websocket_service.dart @@ -0,0 +1,349 @@ +import 'dart:async'; +import 'dart:convert'; +import 'dart:math'; + +import 'package:flutter/foundation.dart'; +import 'package:logger/logger.dart'; +import 'package:web_socket_channel/web_socket_channel.dart'; + +/// Connection states emitted by [WebSocketService]. +enum SocketConnectionState { disconnected, connecting, connected, reconnecting } + +/// Configuration for the core WebSocket service. +class WebSocketConfig { + const WebSocketConfig({ + required this.baseUri, + this.autoReconnect = true, + this.initialReconnectDelay = const Duration(seconds: 1), + this.maxReconnectDelay = const Duration(seconds: 32), + this.heartbeatInterval = const Duration(seconds: 30), + this.heartbeatTimeout = const Duration(seconds: 45), + }); + + final Uri baseUri; + final bool autoReconnect; + final Duration initialReconnectDelay; + final Duration maxReconnectDelay; + final Duration heartbeatInterval; + final Duration heartbeatTimeout; +} + +/// Parameters used when establishing a socket connection. +class WebSocketConnectionParams { + const WebSocketConnectionParams({required this.uri, this.handshakeMessage}); + + final Uri uri; + final Map? handshakeMessage; +} + +/// Envelope for socket messages. +class SocketMessage { + const SocketMessage({ + required this.type, + required this.payload, + this.headers, + this.raw, + }); + + final String type; + final Map payload; + final Map? headers; + final Map? raw; +} + +typedef WebSocketChannelFactory = WebSocketChannel Function(Uri uri); + +/// Service responsible for managing WebSocket connections, reconnection, +/// heartbeat, and message dispatch. +class WebSocketService { + WebSocketService({ + required WebSocketConfig config, + Logger? logger, + WebSocketChannelFactory? channelFactory, + }) : _config = config, + _logger = logger ?? Logger(), + _channelFactory = channelFactory ?? WebSocketChannel.connect; + + final WebSocketConfig _config; + final Logger _logger; + final WebSocketChannelFactory _channelFactory; + + final _stateController = StreamController.broadcast(); + final _messageController = StreamController.broadcast(); + + SocketConnectionState _state = SocketConnectionState.disconnected; + WebSocketConnectionParams? _currentParams; + WebSocketChannel? _channel; + StreamSubscription? _subscription; + Timer? _heartbeatTimer; + Timer? _heartbeatWatchdog; + DateTime? _lastHeartbeat; + int _reconnectAttempts = 0; + bool _manuallyClosed = false; + + /// Emits connection state updates. + Stream get connectionState => _stateController.stream; + + /// Emits parsed socket messages. + Stream get messages => _messageController.stream; + + /// Latest socket message, useful for debug tooling. + SocketMessage? get lastMessage => _lastMessage; + + /// Returns the current connection state. + SocketConnectionState get currentState => _state; + + /// Whether the socket is currently connected. + bool get isConnected => _state == SocketConnectionState.connected; + + /// Connects to the given socket endpoint using [params]. + Future connect(WebSocketConnectionParams params) async { + _manuallyClosed = false; + _currentParams = params; + _reconnectAttempts = 0; + await _open(params); + } + + /// Disconnects from the socket and prevents automatic reconnection. + Future disconnect({int? code, String? reason}) async { + _manuallyClosed = true; + _reconnectAttempts = 0; + await _closeChannel(code: code, reason: reason); + _updateState(SocketConnectionState.disconnected); + } + + /// Sends a raw payload. The message will be JSON-encoded before dispatch. + void send(Map message) { + if (_channel == null) { + throw StateError('WebSocket not connected'); + } + final encoded = jsonEncode(message); + _channel!.sink.add(encoded); + } + + /// Convenience helper that composes a message envelope. + void sendType( + String type, { + Map? payload, + Map? headers, + }) { + send({ + 'type': type, + if (payload != null) 'payload': payload, + if (headers != null) 'headers': headers, + }); + } + + Future _open(WebSocketConnectionParams params) async { + if (_state == SocketConnectionState.connected || + _state == SocketConnectionState.connecting) { + _logger.w( + 'WebSocketService: connect() called while already connected/connecting', + ); + return; + } + _updateState( + _reconnectAttempts > 0 + ? SocketConnectionState.reconnecting + : SocketConnectionState.connecting, + ); + try { + _logger.i('WebSocketService: Connecting to ${params.uri}'); + final channel = _channelFactory(params.uri); + + _channel = channel; + _subscription = channel.stream.listen( + _handleMessage, + onDone: _handleDone, + onError: _handleError, + cancelOnError: true, + ); + + _updateState(SocketConnectionState.connected); + _startHeartbeat(); + + if (params.handshakeMessage != null) { + _logger.d('WebSocketService: Sending handshake message'); + send(params.handshakeMessage!); + } + } on Exception catch (e, stack) { + _logger.e( + 'WebSocketService: Connection failed', + error: e, + stackTrace: stack, + ); + await _handleError(e, stack); + } + } + + Future _handleError(Object error, [StackTrace? stack]) async { + _logger.e( + 'WebSocketService: Error - $error', + error: error, + stackTrace: stack, + ); + await _closeChannel(); + if (_config.autoReconnect && !_manuallyClosed) { + await _scheduleReconnect(); + } else { + _updateState(SocketConnectionState.disconnected); + } + } + + Future _handleDone() async { + _logger.w('WebSocketService: Connection closed by server'); + await _closeChannel(); + if (_config.autoReconnect && !_manuallyClosed) { + await _scheduleReconnect(); + } else { + _updateState(SocketConnectionState.disconnected); + } + } + + void _handleMessage(dynamic data) { + try { + Map? decoded; + if (data is String) { + decoded = jsonDecode(data) as Map; + } else if (data is List) { + decoded = jsonDecode(utf8.decode(data)) as Map; + } else if (data is Map) { + decoded = data; + } + + if (decoded == null) { + _logger.w( + 'WebSocketService: Received unsupported message type: ${data.runtimeType}', + ); + return; + } + + final type = decoded['type'] as String? ?? 'unknown'; + final payload = + (decoded['payload'] as Map?) ?? + const {}; + final headers = decoded['headers'] as Map?; + + if (type == 'system.heartbeat') { + _lastHeartbeat = DateTime.now(); + } + + _messageController.add( + SocketMessage( + type: type, + payload: payload, + headers: headers, + raw: decoded, + ), + ); + _lastMessage = SocketMessage( + type: type, + payload: payload, + headers: headers, + raw: decoded, + ); + } on Object catch (e, stack) { + _logger.e( + 'WebSocketService: Failed to parse message', + error: e, + stackTrace: stack, + ); + } + } + + Future _scheduleReconnect() async { + if (_currentParams == null) { + _logger.w('WebSocketService: No connection params for reconnect'); + return; + } + _reconnectAttempts += 1; + final delay = _computeBackoffDelay(_reconnectAttempts); + _logger.i('WebSocketService: Reconnecting in ${delay.inMilliseconds}ms'); + _updateState(SocketConnectionState.reconnecting); + await Future.delayed(delay); + if (_manuallyClosed) { + _logger.d('WebSocketService: Reconnect aborted (manually closed)'); + return; + } + await _open(_currentParams!); + } + + Duration _computeBackoffDelay(int attempt) { + final baseMs = _config.initialReconnectDelay.inMilliseconds; + final maxMs = _config.maxReconnectDelay.inMilliseconds; + final delayMs = baseMs * pow(2, attempt - 1); + return Duration(milliseconds: min(delayMs.toInt(), maxMs)); + } + + void _startHeartbeat() { + _lastHeartbeat = DateTime.now(); + _heartbeatTimer?.cancel(); + _heartbeatWatchdog?.cancel(); + + _heartbeatTimer = Timer.periodic(_config.heartbeatInterval, (_) { + if (_channel == null) { + return; + } + try { + sendType( + 'system.ping', + payload: { + 'timestamp': DateTime.now().toUtc().toIso8601String(), + 'platform': kIsWeb ? 'web' : 'flutter', + }, + ); + } on Object catch (e, stack) { + _logger.e( + 'WebSocketService: Failed to send ping', + error: e, + stackTrace: stack, + ); + } + }); + + _heartbeatWatchdog = Timer.periodic(const Duration(seconds: 5), (_) { + if (_lastHeartbeat == null) { + return; + } + final diff = DateTime.now().difference(_lastHeartbeat!); + if (diff > _config.heartbeatTimeout) { + _logger.w( + 'WebSocketService: Heartbeat timeout after ${diff.inSeconds}s, closing connection', + ); + unawaited( + _handleError( + TimeoutException('Heartbeat timeout (${diff.inSeconds}s)'), + ), + ); + } + }); + } + + Future _closeChannel({int? code, String? reason}) async { + _heartbeatTimer?.cancel(); + _heartbeatWatchdog?.cancel(); + _heartbeatTimer = null; + _heartbeatWatchdog = null; + await _subscription?.cancel(); + _subscription = null; + await _channel?.sink.close(code, reason); + _channel = null; + } + + void _updateState(SocketConnectionState newState) { + if (_state == newState) { + return; + } + _state = newState; + _stateController.add(newState); + } + + /// Releases resources. Call when the service is no longer needed. + Future dispose() async { + await disconnect(); + await _stateController.close(); + await _messageController.close(); + } +} + +SocketMessage? _lastMessage; diff --git a/lib/core/utils/qr_decoder.dart b/lib/core/utils/qr_decoder.dart index 4069610..e996d83 100644 --- a/lib/core/utils/qr_decoder.dart +++ b/lib/core/utils/qr_decoder.dart @@ -4,7 +4,7 @@ import 'package:rgnets_fdk/core/config/environment.dart'; /// Utility to provide QR code credentials class QrDecoder { static final Logger _logger = Logger(); - + /// Get the test API credentials /// In production, this would decode an actual QR code image /// For staging/development, uses environment configuration @@ -12,7 +12,7 @@ class QrDecoder { try { // In a real implementation, this would decode the QR code from assets // For security, credentials should come from environment variables - + if (EnvironmentConfig.isStaging || EnvironmentConfig.isDevelopment) { // Use environment-configured credentials final apiUrl = EnvironmentConfig.apiBaseUrl; @@ -21,14 +21,16 @@ class QrDecoder { .replaceFirst('http://', '') .split('/') .first; - + return { 'fqdn': fqdn, 'login': EnvironmentConfig.apiUsername, 'apiKey': EnvironmentConfig.apiKey, + 'site_name': fqdn, + 'timestamp': DateTime.now().toUtc().toIso8601String(), }; } - + // In production, this would decode from actual QR code // or return null to force manual authentication return null; @@ -37,4 +39,4 @@ class QrDecoder { return null; } } -} \ No newline at end of file +} diff --git a/lib/features/auth/data/datasources/auth_local_data_source.dart b/lib/features/auth/data/datasources/auth_local_data_source.dart index 2e5f51d..7b8efcc 100644 --- a/lib/features/auth/data/datasources/auth_local_data_source.dart +++ b/lib/features/auth/data/datasources/auth_local_data_source.dart @@ -12,14 +12,21 @@ abstract class AuthLocalDataSource { required String apiUrl, required String apiToken, required String username, + String? siteName, + DateTime? issuedAt, + String? signature, + bool markAuthenticated = false, }); Future clearCredentials(); + Future saveSession({ + required String token, + required DateTime expiresAt, + }); + Future clearSession(); } class AuthLocalDataSourceImpl implements AuthLocalDataSource { - const AuthLocalDataSourceImpl({ - required this.storageService, - }); + const AuthLocalDataSourceImpl({required this.storageService}); final StorageService storageService; static const String _userKey = 'current_user'; @@ -71,12 +78,20 @@ class AuthLocalDataSourceImpl implements AuthLocalDataSource { required String apiUrl, required String apiToken, required String username, + String? siteName, + DateTime? issuedAt, + String? signature, + bool markAuthenticated = false, }) async { try { await storageService.saveCredentials( apiUrl: apiUrl, apiToken: apiToken, username: username, + siteName: siteName, + issuedAtIso: issuedAt?.toUtc().toIso8601String(), + signature: signature, + markAuthenticated: markAuthenticated, ); } on Exception catch (e) { throw Exception('Failed to save credentials: $e'); @@ -91,4 +106,25 @@ class AuthLocalDataSourceImpl implements AuthLocalDataSource { throw Exception('Failed to clear credentials: $e'); } } -} \ No newline at end of file + + @override + Future saveSession({ + required String token, + required DateTime expiresAt, + }) async { + try { + await storageService.saveSession(token: token, expiresAt: expiresAt); + } on Exception catch (e) { + throw Exception('Failed to save session: $e'); + } + } + + @override + Future clearSession() async { + try { + await storageService.clearSession(); + } on Exception catch (e) { + throw Exception('Failed to clear session: $e'); + } + } +} diff --git a/lib/features/auth/data/models/auth_attempt.dart b/lib/features/auth/data/models/auth_attempt.dart new file mode 100644 index 0000000..a9fd7f5 --- /dev/null +++ b/lib/features/auth/data/models/auth_attempt.dart @@ -0,0 +1,58 @@ +class AuthAttempt { + const AuthAttempt({ + required this.fqdn, + required this.login, + required this.success, + required this.timestamp, + this.siteName, + this.message, + }); + + factory AuthAttempt.fromJson(Map json) { + return AuthAttempt( + fqdn: json['fqdn'] as String? ?? '', + login: json['login'] as String? ?? '', + success: json['success'] as bool? ?? false, + timestamp: DateTime.tryParse(json['timestamp'] as String? ?? '') ?? + DateTime.fromMillisecondsSinceEpoch(0, isUtc: true), + siteName: json['siteName'] as String?, + message: json['message'] as String?, + ); + } + + final String fqdn; + final String login; + final bool success; + final DateTime timestamp; + final String? siteName; + final String? message; + + Map toJson() { + return { + 'fqdn': fqdn, + 'login': login, + 'success': success, + 'timestamp': timestamp.toIso8601String(), + if (siteName != null) 'siteName': siteName, + if (message != null) 'message': message, + }; + } + + AuthAttempt copyWith({ + String? fqdn, + String? login, + bool? success, + DateTime? timestamp, + String? siteName, + String? message, + }) { + return AuthAttempt( + fqdn: fqdn ?? this.fqdn, + login: login ?? this.login, + success: success ?? this.success, + timestamp: timestamp ?? this.timestamp, + siteName: siteName ?? this.siteName, + message: message ?? this.message, + ); + } +} diff --git a/lib/features/auth/data/repositories/auth_repository.dart b/lib/features/auth/data/repositories/auth_repository.dart index 308ace2..60cf9f0 100644 --- a/lib/features/auth/data/repositories/auth_repository.dart +++ b/lib/features/auth/data/repositories/auth_repository.dart @@ -4,19 +4,16 @@ import 'package:rgnets_fdk/core/config/environment.dart'; import 'package:rgnets_fdk/core/errors/failures.dart'; import 'package:rgnets_fdk/core/services/mock_data_service.dart'; import 'package:rgnets_fdk/features/auth/data/datasources/auth_local_data_source.dart'; -import 'package:rgnets_fdk/features/auth/data/datasources/auth_remote_data_source.dart'; import 'package:rgnets_fdk/features/auth/data/models/user_model.dart'; import 'package:rgnets_fdk/features/auth/domain/entities/user.dart'; import 'package:rgnets_fdk/features/auth/domain/repositories/auth_repository.dart'; class AuthRepositoryImpl implements AuthRepository { const AuthRepositoryImpl({ - required this.remoteDataSource, required this.localDataSource, required this.mockDataService, }); - final AuthRemoteDataSource remoteDataSource; final AuthLocalDataSource localDataSource; final MockDataService mockDataService; @@ -25,19 +22,26 @@ class AuthRepositoryImpl implements AuthRepository { required String fqdn, required String login, required String apiKey, + String? siteName, + DateTime? issuedAt, + String? signature, }) async { try { // Development mode: return mock user immediately if (EnvironmentConfig.isDevelopment) { final mockUser = mockDataService.getMockUser(); - + // Save mock user locally for consistency await localDataSource.saveCredentials( apiUrl: 'https://dev.local', - apiToken: 'dev-api-key', - username: 'developer', - ); - + apiToken: 'dev-api-key', + username: 'developer', + siteName: siteName ?? 'Development', + issuedAt: issuedAt ?? DateTime.now().toUtc(), + signature: signature, + markAuthenticated: true, + ); + // Convert to UserModel and save final userModel = UserModel( username: mockUser.username, @@ -46,34 +50,28 @@ class AuthRepositoryImpl implements AuthRepository { email: mockUser.email, ); await localDataSource.saveUser(userModel); - - return Right(mockUser); - } - - // Staging/Production: use real API - final isValid = await remoteDataSource.testConnection( - fqdn: fqdn, - login: login, - apiKey: apiKey, - ); - if (!isValid) { - return const Left(AuthFailure(message: 'Invalid credentials')); + return Right(mockUser); } - // Get user info - final userModel = await remoteDataSource.getUserInfo( - fqdn: fqdn, - login: login, - ); - - // Save credentials and user info locally + // Staging/Production: use real API + // Save credentials locally; WebSocket handshake will validate and enrich await localDataSource.saveCredentials( apiUrl: 'https://$fqdn', apiToken: apiKey, username: login, + siteName: siteName, + issuedAt: issuedAt, + signature: signature, + markAuthenticated: false, + ); + + final userModel = UserModel( + username: login, + apiUrl: 'https://$fqdn', + displayName: siteName ?? login, ); - + await localDataSource.saveUser(userModel); return Right(userModel.toEntity()); @@ -87,6 +85,7 @@ class AuthRepositoryImpl implements AuthRepository { try { await localDataSource.clearCredentials(); await localDataSource.clearUser(); + await localDataSource.clearSession(); return const Right(null); } on Exception catch (e) { return Left(AuthFailure(message: 'Sign out failed: $e')); @@ -100,7 +99,7 @@ class AuthRepositoryImpl implements AuthRepository { if (EnvironmentConfig.isDevelopment) { return Right(MockDataService().getMockUser()); } - + // Staging/Production: get from local storage final userModel = await localDataSource.getUser(); return Right(userModel?.toEntity()); @@ -116,13 +115,13 @@ class AuthRepositoryImpl implements AuthRepository { if (EnvironmentConfig.isDevelopment) { return const Right(true); } - + // Staging mode: check if we have the interurban credentials stored if (EnvironmentConfig.isStaging) { // Auto-authenticate for staging return const Right(true); } - + // Production: check local storage final isAuth = await localDataSource.isAuthenticated(); return Right(isAuth); @@ -130,4 +129,4 @@ class AuthRepositoryImpl implements AuthRepository { return Left(AuthFailure(message: 'Failed to check auth status: $e')); } } -} \ No newline at end of file +} diff --git a/lib/features/auth/domain/repositories/auth_repository.dart b/lib/features/auth/domain/repositories/auth_repository.dart index 61e03e9..70d7dbe 100644 --- a/lib/features/auth/domain/repositories/auth_repository.dart +++ b/lib/features/auth/domain/repositories/auth_repository.dart @@ -7,6 +7,9 @@ abstract class AuthRepository { required String fqdn, required String login, required String apiKey, + String? siteName, + DateTime? issuedAt, + String? signature, }); Future> signOut(); @@ -14,4 +17,4 @@ abstract class AuthRepository { Future> getCurrentUser(); Future> isAuthenticated(); -} \ No newline at end of file +} diff --git a/lib/features/auth/domain/usecases/authenticate_user.dart b/lib/features/auth/domain/usecases/authenticate_user.dart index b64b2fd..ae17e19 100644 --- a/lib/features/auth/domain/usecases/authenticate_user.dart +++ b/lib/features/auth/domain/usecases/authenticate_user.dart @@ -15,6 +15,9 @@ final class AuthenticateUser extends UseCase { fqdn: params.fqdn, login: params.login, apiKey: params.apiKey, + siteName: params.siteName, + issuedAt: params.issuedAt, + signature: params.signature, ); } } @@ -24,12 +27,25 @@ class AuthenticateUserParams extends Params { required this.fqdn, required this.login, required this.apiKey, + this.siteName, + this.issuedAt, + this.signature, }); final String fqdn; final String login; final String apiKey; + final String? siteName; + final DateTime? issuedAt; + final String? signature; @override - List get props => [fqdn, login, apiKey]; -} \ No newline at end of file + List get props => [ + fqdn, + login, + apiKey, + siteName, + issuedAt, + signature, + ]; +} diff --git a/lib/features/auth/presentation/providers/auth_notifier.dart b/lib/features/auth/presentation/providers/auth_notifier.dart index 0157d61..2bd42dc 100644 --- a/lib/features/auth/presentation/providers/auth_notifier.dart +++ b/lib/features/auth/presentation/providers/auth_notifier.dart @@ -1,9 +1,16 @@ +import 'dart:async'; import 'dart:math' as math; import 'package:flutter/foundation.dart'; import 'package:logger/logger.dart'; +import 'package:rgnets_fdk/core/config/environment.dart'; import 'package:rgnets_fdk/core/providers/core_providers.dart'; +import 'package:rgnets_fdk/core/providers/repository_providers.dart'; import 'package:rgnets_fdk/core/providers/use_case_providers.dart'; +import 'package:rgnets_fdk/core/providers/websocket_providers.dart'; +import 'package:rgnets_fdk/core/services/websocket_service.dart'; +import 'package:rgnets_fdk/features/auth/data/models/auth_attempt.dart'; +import 'package:rgnets_fdk/features/auth/data/models/user_model.dart'; import 'package:rgnets_fdk/features/auth/domain/entities/auth_status.dart'; import 'package:rgnets_fdk/features/auth/domain/entities/user.dart'; import 'package:rgnets_fdk/features/auth/domain/usecases/authenticate_user.dart'; @@ -16,25 +23,29 @@ part 'auth_notifier.g.dart'; @Riverpod(keepAlive: true) // Keep alive to maintain auth state class Auth extends _$Auth { late final Logger _logger; - + @override Future build() async { _logger = ref.watch(loggerProvider); - + final storage = ref.read(storageServiceProvider); + await storage.migrateLegacyCredentialsIfNeeded(); + _logger ..i('πŸ” AUTH_NOTIFIER: build() called - initializing auth state') ..d('AUTH_NOTIFIER: Provider hash: $hashCode'); - + try { // Check if user is already authenticated (stored session) _logger.d('AUTH_NOTIFIER: Checking for existing user session...'); final getCurrentUser = ref.read(getCurrentUserProvider); final result = await getCurrentUser(); - + return result.fold( (failure) { _logger - ..w('AUTH_NOTIFIER: No existing session found or error: ${failure.message}') + ..w( + 'AUTH_NOTIFIER: No existing session found or error: ${failure.message}', + ) ..d('AUTH_NOTIFIER: Setting initial state to unauthenticated'); return const AuthStatus.unauthenticated(); }, @@ -61,6 +72,9 @@ class Auth extends _$Auth { required String fqdn, required String login, required String apiKey, + String? siteName, + DateTime? issuedAt, + String? signature, }) async { final keyLength = math.min(4, apiKey.length); _logger @@ -69,86 +83,128 @@ class Auth extends _$Auth { ..d('AUTH_NOTIFIER: Login: $login') ..d('AUTH_NOTIFIER: API Key: ${apiKey.substring(0, keyLength)}...') ..d('AUTH_NOTIFIER: Current state before auth: ${state.value}'); - + if (kIsWeb) { // Authentication starting - details available in logger } - + // Set loading state _logger ..d('AUTH_NOTIFIER: Setting state to authenticating') - ..d('AUTH_NOTIFIER: State after setting to authenticating: ${state.value}'); + ..d( + 'AUTH_NOTIFIER: State after setting to authenticating: ${state.value}', + ); state = const AsyncValue.data(AuthStatus.authenticating()); - + try { // Get the use case _logger ..d('AUTH_NOTIFIER: Getting authenticateUser use case') ..d('AUTH_NOTIFIER: Use case retrieved successfully'); final authenticateUser = ref.read(authenticateUserProvider); - + // Execute authentication _logger.i('AUTH_NOTIFIER: Executing authentication use case'); final params = AuthenticateUserParams( fqdn: fqdn, login: login, apiKey: apiKey, + siteName: siteName, + issuedAt: issuedAt, + signature: signature, ); _logger.d('AUTH_NOTIFIER: Params created: $params'); - + final result = await authenticateUser(params); _logger ..d('AUTH_NOTIFIER: Authentication use case completed') ..d('AUTH_NOTIFIER: Result is success: ${result.isRight()}'); - - // Update state based on result - final newStatus = result.fold( - (failure) { - _logger.e('AUTH_NOTIFIER: ❌ Authentication failed: ${failure.message}'); - // Authentication failed - error available in logger - return AuthStatus.failure(failure.message); + + await result.fold>( + (failure) async { + _logger.e( + 'AUTH_NOTIFIER: ❌ Authentication failed: ${failure.message}', + ); + await _recordAuthAttempt( + fqdn: fqdn, + login: login, + siteName: siteName, + success: false, + message: failure.message, + ); + state = AsyncValue.data(AuthStatus.failure(failure.message)); }, - (user) { + (user) async { _logger - ..i('AUTH_NOTIFIER: βœ… Authentication successful!') - ..d('AUTH_NOTIFIER: User: ${user.username}') - ..d('AUTH_NOTIFIER: API URL: ${user.apiUrl}') - ..d('AUTH_NOTIFIER: Display Name: ${user.displayName}'); - // Authentication successful - user info available in logger - return AuthStatus.authenticated(user); + ..i('AUTH_NOTIFIER: βœ… Credentials stored, proceeding to handshake') + ..d('AUTH_NOTIFIER: User placeholder: ${user.username}'); + + if (!EnvironmentConfig.useWebSockets) { + _logger.w( + 'AUTH_NOTIFIER: WebSockets disabled via config, marking authenticated without handshake', + ); + await ref + .read(storageServiceProvider) + .setAuthenticated(value: true); + await _recordAuthAttempt( + fqdn: fqdn, + login: login, + siteName: siteName, + success: true, + message: 'WebSockets disabled fallback', + ); + state = AsyncValue.data(AuthStatus.authenticated(user)); + return; + } + + try { + final resolvedUser = await _performWebSocketHandshake( + fqdn: fqdn, + login: login, + apiKey: apiKey, + siteName: siteName, + issuedAt: issuedAt, + signature: signature, + ); + + _logger + ..i('AUTH_NOTIFIER: βœ… WebSocket handshake acknowledged') + ..d('AUTH_NOTIFIER: Resolved user: ${resolvedUser.username}') + ..d('AUTH_NOTIFIER: Display name: ${resolvedUser.displayName}'); + + state = AsyncValue.data(AuthStatus.authenticated(resolvedUser)); + } on Exception catch (e, stack) { + _logger + ..e('AUTH_NOTIFIER: WebSocket handshake failed: $e') + ..d('AUTH_NOTIFIER: Handshake failure stacktrace: $stack'); + state = AsyncValue.data(AuthStatus.failure(e.toString())); + } }, ); - - _logger - ..d('AUTH_NOTIFIER: Setting new auth status: $newStatus') - ..i('AUTH_NOTIFIER: State updated successfully') - ..d('AUTH_NOTIFIER: Final state: ${state.value}'); - state = AsyncValue.data(newStatus); - - // Final auth state updated } on Exception catch (e, stack) { - _logger.e('AUTH_NOTIFIER: ⚠️ Exception during authentication: $e\n$stack'); + _logger.e( + 'AUTH_NOTIFIER: ⚠️ Exception during authentication: $e\n$stack', + ); // Exception handled by logger state = AsyncValue.data(AuthStatus.failure(e.toString())); } } - Future signOut() async { _logger ..i('πŸšͺ AUTH_NOTIFIER: signOut() called') ..d('AUTH_NOTIFIER: Current state before signout: ${state.value}'); - + try { // Get the use case _logger.d('AUTH_NOTIFIER: Getting signOutUser use case'); final signOutUser = ref.read(signOutUserProvider); - + // Execute sign out _logger.i('AUTH_NOTIFIER: Executing sign out'); final result = await signOutUser(); _logger.d('AUTH_NOTIFIER: Sign out use case completed'); - + // Update state based on result final newStatus = result.fold( (failure) { @@ -160,15 +216,186 @@ class Auth extends _$Auth { return const AuthStatus.unauthenticated(); }, ); - + _logger.d('AUTH_NOTIFIER: Setting state to: $newStatus'); state = AsyncValue.data(newStatus); _logger.d('AUTH_NOTIFIER: Final state after signout: ${state.value}'); + if (EnvironmentConfig.useWebSockets) { + final webSocketService = ref.read(webSocketServiceProvider); + await webSocketService.disconnect( + code: 1000, + reason: 'User signed out', + ); + } } on Exception catch (e, stack) { _logger.e('AUTH_NOTIFIER: ⚠️ Exception during sign out: $e\n$stack'); state = AsyncValue.data(AuthStatus.failure(e.toString())); } } + + Future _performWebSocketHandshake({ + required String fqdn, + required String login, + required String apiKey, + String? siteName, + DateTime? issuedAt, + String? signature, + }) async { + final config = ref.read(webSocketConfigProvider); + final storage = ref.read(storageServiceProvider); + final localDataSource = ref.read(authLocalDataSourceProvider); + final service = ref.read(webSocketServiceProvider); + + final baseUri = config.baseUri; + final queryParameters = Map.from(baseUri.queryParameters); + final resolvedSite = + (siteName ?? storage.siteName ?? fqdn).trim(); + if (resolvedSite.isNotEmpty) { + queryParameters['site'] = resolvedSite; + } + final uri = baseUri.replace( + queryParameters: queryParameters.isEmpty ? null : queryParameters, + ); + + final payload = { + 'type': 'auth.init', + 'payload': { + 'fqdn': fqdn, + 'login': login, + 'api_key': apiKey, + 'site_name': resolvedSite, + 'timestamp': (issuedAt ?? DateTime.now().toUtc()).toIso8601String(), + if (signature != null && signature.isNotEmpty) 'signature': signature, + }, + }; + + if (service.isConnected) { + await service.disconnect(code: 4000, reason: 'Re-authenticating'); + } + + final completer = Completer(); + final subscription = service.messages.listen((message) { + if (message.type == 'auth.ack' || message.type == 'auth.error') { + if (!completer.isCompleted) { + completer.complete(message); + } + } + }); + + _logger + ..i('AUTH_NOTIFIER: Initiating WebSocket handshake') + ..d('AUTH_NOTIFIER: WebSocket URI: $uri'); + + try { + await service.connect( + WebSocketConnectionParams(uri: uri, handshakeMessage: payload), + ); + + final socketMessage = await completer.future.timeout( + const Duration(seconds: 15), + ); + + if (socketMessage.type == 'auth.error') { + final errorMessage = + socketMessage.payload['message'] as String? ?? + 'Authentication error'; + await storage.setAuthenticated(value: false); + await localDataSource.clearSession(); + await service.disconnect(code: 4401, reason: 'auth.error'); + await _recordAuthAttempt( + fqdn: fqdn, + login: login, + siteName: resolvedSite, + success: false, + message: errorMessage, + ); + throw Exception(errorMessage); + } + + final payloadMap = socketMessage.payload; + final sessionToken = payloadMap['sessionToken'] as String?; + final expiresAtIso = payloadMap['expiresAt'] as String?; + DateTime? expiresAt; + if (expiresAtIso != null) { + expiresAt = DateTime.tryParse(expiresAtIso); + } + + if (sessionToken != null && + sessionToken.isNotEmpty && + expiresAt != null) { + await localDataSource.saveSession( + token: sessionToken, + expiresAt: expiresAt, + ); + } else { + await localDataSource.clearSession(); + } + + await storage.setAuthenticated(value: true); + + final userPayload = + (payloadMap['user'] as Map?) ?? const {}; + final resolvedLogin = + userPayload['login'] as String? ?? login; + final resolvedDisplayName = + userPayload['siteName'] as String? ?? resolvedSite; + + final userModel = UserModel( + username: resolvedLogin, + apiUrl: 'https://$fqdn', + displayName: resolvedDisplayName, + email: null, + ); + await localDataSource.saveUser(userModel); + + await _recordAuthAttempt( + fqdn: fqdn, + login: resolvedLogin, + siteName: resolvedDisplayName, + success: true, + message: 'auth.ack', + ); + + return userModel.toEntity(); + } on TimeoutException { + await storage.setAuthenticated(value: false); + await localDataSource.clearSession(); + await service.disconnect(code: 4408, reason: 'Handshake timeout'); + await _recordAuthAttempt( + fqdn: fqdn, + login: login, + siteName: siteName ?? resolvedSite, + success: false, + message: 'WebSocket handshake timed out', + ); + throw Exception('WebSocket handshake timed out'); + } finally { + await subscription.cancel(); + } + } + + Future _recordAuthAttempt({ + required String fqdn, + required String login, + required bool success, + String? siteName, + String? message, + }) async { + try { + final storage = ref.read(storageServiceProvider); + final attempt = AuthAttempt( + fqdn: fqdn, + login: login, + siteName: siteName, + success: success, + message: message, + timestamp: DateTime.now().toUtc(), + ); + await storage.logAuthAttempt(attempt); + } on Exception catch (e) { + _logger.w('AUTH_NOTIFIER: Failed to record auth attempt: $e'); + } + } } // Modern computed providers using @riverpod @@ -177,9 +404,10 @@ bool isAuthenticated(IsAuthenticatedRef ref) { final authAsync = ref.watch(authProvider); final authState = authAsync.valueOrNull; return authState?.maybeWhen( - authenticated: (_) => true, - orElse: () => false, - ) ?? false; + authenticated: (_) => true, + orElse: () => false, + ) ?? + false; } @riverpod @@ -196,4 +424,4 @@ User? currentUser(CurrentUserRef ref) { AuthStatus? authStatus(AuthStatusRef ref) { final authAsync = ref.watch(authProvider); return authAsync.valueOrNull; -} \ No newline at end of file +} diff --git a/lib/features/auth/presentation/screens/auth_screen.dart b/lib/features/auth/presentation/screens/auth_screen.dart index 376b9ca..c5d6a69 100644 --- a/lib/features/auth/presentation/screens/auth_screen.dart +++ b/lib/features/auth/presentation/screens/auth_screen.dart @@ -4,6 +4,7 @@ import 'package:go_router/go_router.dart'; import 'package:rgnets_fdk/core/config/environment.dart'; import 'package:rgnets_fdk/core/widgets/widgets.dart'; import 'package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart'; +import 'package:rgnets_fdk/features/auth/presentation/widgets/credential_approval_sheet.dart'; /// Authentication screen for QR code scanning class AuthScreen extends ConsumerStatefulWidget { @@ -25,125 +26,127 @@ class _AuthScreenState extends ConsumerState { mainAxisAlignment: MainAxisAlignment.center, children: [ SizedBox(height: MediaQuery.of(context).size.height * 0.1), - // Logo - Container( - width: 120, - height: 120, - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.surface, - borderRadius: BorderRadius.circular(20), - ), - child: const Center( - child: Text( - 'FDK', - style: TextStyle( - fontSize: 40, - fontWeight: FontWeight.bold, - color: Color(0xFF4A90E2), + // Logo + Container( + width: 120, + height: 120, + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + borderRadius: BorderRadius.circular(20), + ), + child: const Center( + child: Text( + 'FDK', + style: TextStyle( + fontSize: 40, + fontWeight: FontWeight.bold, + color: Color(0xFF4A90E2), + ), ), ), ), - ), - const SizedBox(height: 48), - - // Title - Text( - 'Connect to rXg System', - style: Theme.of(context).textTheme.headlineSmall, - ), - const SizedBox(height: 16), - Text( - 'Scan QR code to authenticate', - style: Theme.of(context).textTheme.bodyLarge?.copyWith( - color: Colors.grey, + const SizedBox(height: 48), + + // Title + Text( + 'Connect to rXg System', + style: Theme.of(context).textTheme.headlineSmall, ), - ), - const SizedBox(height: 48), - - // QR Scanner button - SizedBox( - width: double.infinity, - height: 56, - child: ElevatedButton.icon( - onPressed: () async { - // Navigate to scanner and wait for result - final result = await context.push>('/scanner?mode=auth'); - if (result != null && context.mounted) { - // Process scanned credentials - await _processScannedCredentials(result); - } - }, - icon: const Icon(Icons.qr_code_scanner, size: 28), - label: const Text( - 'Scan QR Code', - style: TextStyle(fontSize: 18), - ), - style: ElevatedButton.styleFrom( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12), + const SizedBox(height: 16), + Text( + 'Scan QR code to authenticate', + style: Theme.of( + context, + ).textTheme.bodyLarge?.copyWith(color: Colors.grey), + ), + const SizedBox(height: 48), + + // QR Scanner button + SizedBox( + width: double.infinity, + height: 56, + child: ElevatedButton.icon( + onPressed: () async { + // Navigate to scanner and wait for result + final result = await context.push>( + '/scanner?mode=auth', + ); + if (result != null && context.mounted) { + // Process scanned credentials + await _processScannedCredentials(result); + } + }, + icon: const Icon(Icons.qr_code_scanner, size: 28), + label: const Text( + 'Scan QR Code', + style: TextStyle(fontSize: 18), + ), + style: ElevatedButton.styleFrom( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), ), ), ), - ), - const SizedBox(height: 16), - - // Manual entry option - TextButton( - onPressed: _showManualEntryDialog, - child: const Text('Enter credentials manually'), - ), - - const SizedBox(height: 32), - - // Show environment-specific message - if (EnvironmentConfig.isDevelopment) - Card( - color: Theme.of(context).colorScheme.surface, - child: Padding( - padding: const EdgeInsets.all(16), - child: Column( - children: [ - const Text( - 'πŸš€ Development Mode', - style: TextStyle(fontWeight: FontWeight.bold), - ), - const SizedBox(height: 8), - const Text( - 'This screen should not appear in development mode.', - style: TextStyle(fontSize: 12), - ), - const SizedBox(height: 12), - AppButton( - text: 'Go to Home', - onPressed: () => context.go('/home'), - ), - ], + const SizedBox(height: 16), + + // Manual entry option + TextButton( + onPressed: _showManualEntryDialog, + child: const Text('Enter credentials manually'), + ), + + const SizedBox(height: 32), + + // Show environment-specific message + if (EnvironmentConfig.isDevelopment) + Card( + color: Theme.of(context).colorScheme.surface, + child: Padding( + padding: const EdgeInsets.all(16), + child: Column( + children: [ + const Text( + 'πŸš€ Development Mode', + style: TextStyle(fontWeight: FontWeight.bold), + ), + const SizedBox(height: 8), + const Text( + 'This screen should not appear in development mode.', + style: TextStyle(fontSize: 12), + ), + const SizedBox(height: 12), + AppButton( + text: 'Go to Home', + onPressed: () => context.go('/home'), + ), + ], + ), ), ), - ), - - if (EnvironmentConfig.isStaging) - Card( - color: Theme.of(context).colorScheme.surface, - child: const Padding( - padding: EdgeInsets.all(16), - child: Column( - children: [ - Text( - 'πŸ§ͺ Staging Mode', - style: TextStyle(fontWeight: FontWeight.bold), - ), - SizedBox(height: 8), - Text( - 'Auto-authenticating with Interurban test API...', - style: TextStyle(fontSize: 12), - ), - SizedBox(height: 12), - LoadingIndicator(), - ], + + if (EnvironmentConfig.isStaging) + Card( + color: Theme.of(context).colorScheme.surface, + child: const Padding( + padding: EdgeInsets.all(16), + child: Column( + children: [ + Text( + 'πŸ§ͺ Staging Mode', + style: TextStyle(fontWeight: FontWeight.bold), + ), + SizedBox(height: 8), + Text( + 'Auto-authenticating with Interurban test API...', + style: TextStyle(fontSize: 12), + ), + SizedBox(height: 12), + LoadingIndicator(), + ], + ), ), ), - ), ], ), ), @@ -151,72 +154,140 @@ class _AuthScreenState extends ConsumerState { ), ); } - - Future _processScannedCredentials(Map credentials) async { + + Future _processScannedCredentials( + Map credentials, + ) async { if (!mounted) { return; } - + final navigator = Navigator.of(context); final scaffoldMessenger = ScaffoldMessenger.of(context); final goRouter = GoRouter.of(context); - - // Show loading dialog - await showDialog( - context: context, - barrierDismissible: false, - builder: (context) => const Center( - child: LoadingIndicator(), - ), - ); - + + var loadingShown = false; + try { - // Extract credentials from scanned data final fqdn = credentials['fqdn'] as String?; final login = credentials['login'] as String?; final apiKey = credentials['apiKey'] as String?; - + final siteNameRaw = + credentials['siteName'] as String? ?? + credentials['site_name'] as String?; + final issuedAtRaw = + credentials['issuedAt'] as String? ?? + credentials['issued_at'] as String?; + final signature = credentials['signature'] as String?; + final issuedAt = issuedAtRaw != null + ? DateTime.tryParse(issuedAtRaw) + : null; + final siteName = + siteNameRaw != null && siteNameRaw.trim().isNotEmpty + ? siteNameRaw.trim() + : null; + if (fqdn == null || login == null || apiKey == null) { - throw Exception('Invalid QR code format'); + throw Exception('Invalid credential payload'); } - - // Authenticate with the system - await ref.read(authProvider.notifier).authenticate( + + final approved = await _showCredentialApprovalSheet( fqdn: fqdn, login: login, apiKey: apiKey, + siteName: siteName, + issuedAt: issuedAt, + signature: signature, ); - - if (mounted) { - navigator.pop(); // Close loading dialog - - ref.read(authProvider).maybeWhen( - data: (status) { - status.maybeWhen( - authenticated: (_) { - if (mounted) { - goRouter.go('/home'); - } - }, - failure: (message) { - if (mounted) { - scaffoldMessenger.showSnackBar( - SnackBar( - content: Text(message), - backgroundColor: Colors.red, - ), - ); - } - }, - orElse: () {}, - ); - }, - orElse: () {}, + + if (!approved) { + if (!mounted) { + return; + } + scaffoldMessenger.showSnackBar( + const SnackBar( + content: Text('Approval cancelled. You can rescan or edit entries.'), + ), ); + return; + } + + if (!mounted) { + return; } + + await showDialog( + context: context, + barrierDismissible: false, + builder: (context) => const Center(child: LoadingIndicator()), + ); + loadingShown = true; + + if (!mounted) { + return; + } + + await ref + .read(authProvider.notifier) + .authenticate( + fqdn: fqdn, + login: login, + apiKey: apiKey, + siteName: siteName, + issuedAt: issuedAt, + signature: signature, + ); + + if (!mounted) { + return; + } + + if (!mounted) { + return; + } + + if (loadingShown && navigator.canPop()) { + navigator.pop(); + loadingShown = false; + } + + ref + .read(authProvider) + .maybeWhen( + data: (status) { + status.maybeWhen( + authenticated: (_) { + if (mounted) { + goRouter.go('/home'); + } + }, + failure: (message) { + if (mounted) { + scaffoldMessenger.showSnackBar( + SnackBar( + content: Text(message), + backgroundColor: Colors.red, + action: SnackBarAction( + label: 'Retry', + onPressed: () { + _processScannedCredentials(credentials); + }, + ), + ), + ); + } + }, + orElse: () {}, + ); + }, + orElse: () {}, + ); } on Exception catch (e) { if (mounted) { - navigator.pop(); // Close loading dialog + if (loadingShown && navigator.canPop()) { + navigator.pop(); + loadingShown = false; + } scaffoldMessenger.showSnackBar( SnackBar( content: Text('Error: $e'), @@ -226,52 +297,48 @@ class _AuthScreenState extends ConsumerState { } } } - - void _showManualEntryDialog() { - showDialog( + + Future _showCredentialApprovalSheet({ + required String fqdn, + required String login, + required String apiKey, + String? siteName, + DateTime? issuedAt, + String? signature, + }) async { + final result = await showModalBottomSheet( context: context, - builder: (context) => AlertDialog( - title: const Text('Manual Entry'), - content: const Column( - mainAxisSize: MainAxisSize.min, - children: [ - TextField( - decoration: InputDecoration( - labelText: 'rXg System URL', - hintText: 'https://your-rxg.com', - ), - ), - SizedBox(height: 16), - TextField( - decoration: InputDecoration( - labelText: 'Login', - hintText: 'your-login', - ), - ), - SizedBox(height: 16), - TextField( - decoration: InputDecoration( - labelText: 'API Key', - hintText: 'your-api-key', - ), - obscureText: true, - ), - ], - ), - actions: [ - TextButton( - onPressed: () => Navigator.of(context).pop(), - child: const Text('Cancel'), - ), - ElevatedButton( - onPressed: () { - Navigator.of(context).pop(); - context.go('/home'); - }, - child: const Text('Connect'), - ), - ], + isScrollControlled: true, + isDismissible: false, + enableDrag: false, + builder: (_) => CredentialApprovalSheet( + fqdn: fqdn, + login: login, + apiKey: apiKey, + siteName: siteName, + issuedAt: issuedAt, + signature: signature, ), ); + return result ?? false; } -} \ No newline at end of file + + Future _showManualEntryDialog() async { + final result = await showModalBottomSheet?>( + context: context, + isScrollControlled: true, + builder: (_) => const ManualCredentialEntrySheet(), + ); + + if (result == null) { + return; + } + + await _processScannedCredentials({ + 'fqdn': result['fqdn'], + 'login': result['login'], + 'apiKey': result['apiKey'], + 'siteName': result['siteName'], + }); + } +} diff --git a/lib/features/auth/presentation/widgets/credential_approval_sheet.dart b/lib/features/auth/presentation/widgets/credential_approval_sheet.dart new file mode 100644 index 0000000..bfa6060 --- /dev/null +++ b/lib/features/auth/presentation/widgets/credential_approval_sheet.dart @@ -0,0 +1,324 @@ +import 'package:flutter/material.dart'; + +class CredentialApprovalSheet extends StatefulWidget { + const CredentialApprovalSheet({ + required this.fqdn, + required this.login, + required this.apiKey, + this.siteName, + this.issuedAt, + this.signature, + super.key, + }); + + final String fqdn; + final String login; + final String apiKey; + final String? siteName; + final DateTime? issuedAt; + final String? signature; + + @override + State createState() => + _CredentialApprovalSheetState(); +} + +class _CredentialApprovalSheetState extends State { + bool _obscureKey = true; + + @override + Widget build(BuildContext context) { + final theme = Theme.of(context); + final keyDisplay = _obscureKey ? _obscure(widget.apiKey) : widget.apiKey; + + return Padding( + padding: EdgeInsets.only( + left: 24, + right: 24, + top: 24, + bottom: MediaQuery.of(context).viewInsets.bottom + 24, + ), + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'Review credentials', + style: theme.textTheme.titleLarge, + ), + const SizedBox(height: 8), + Text( + 'Confirm the record matches the QR badge before approving.', + style: theme.textTheme.bodyMedium?.copyWith( + color: theme.colorScheme.onSurfaceVariant, + ), + ), + const SizedBox(height: 24), + _DetailRow(label: 'Server', value: widget.fqdn), + _DetailRow(label: 'Login', value: widget.login), + _DetailRow( + label: 'Site', + value: (widget.siteName?.isNotEmpty ?? false) + ? widget.siteName! + : 'Not provided', + ), + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Expanded( + child: _DetailRow( + label: 'API Key', + value: keyDisplay, + selectable: !_obscureKey, + ), + ), + IconButton( + tooltip: _obscureKey ? 'Show API key' : 'Hide API key', + onPressed: () { + setState(() { + _obscureKey = !_obscureKey; + }); + }, + icon: Icon(_obscureKey ? Icons.visibility : Icons.vpn_key), + ), + ], + ), + if (widget.issuedAt != null) + _DetailRow( + label: 'Issued At', + value: widget.issuedAt!.toUtc().toIso8601String(), + ), + if (widget.signature != null && widget.signature!.isNotEmpty) + _DetailRow( + label: 'Signature', + value: widget.signature!, + selectable: true, + ), + const SizedBox(height: 24), + Row( + children: [ + Expanded( + child: OutlinedButton( + onPressed: () => Navigator.of(context).pop(false), + child: const Text('Cancel'), + ), + ), + const SizedBox(width: 12), + Expanded( + child: FilledButton.icon( + onPressed: () => Navigator.of(context).pop(true), + icon: const Icon(Icons.check_circle), + label: const Text('Approve'), + ), + ), + ], + ), + ], + ), + ); + } + + String _obscure(String value) { + if (value.length <= 6) { + return '*' * value.length; + } + final start = value.substring(0, 3); + final end = value.substring(value.length - 3); + return '$startβ€’β€’β€’β€’β€’β€’$end'; + } +} + +class ManualCredentialEntrySheet extends StatefulWidget { + const ManualCredentialEntrySheet({super.key}); + + @override + State createState() => + _ManualCredentialEntrySheetState(); +} + +class _ManualCredentialEntrySheetState + extends State { + final _formKey = GlobalKey(); + final _fqdnController = TextEditingController(); + final _loginController = TextEditingController(); + final _apiKeyController = TextEditingController(); + final _siteController = TextEditingController(); + + @override + void dispose() { + _fqdnController.dispose(); + _loginController.dispose(); + _apiKeyController.dispose(); + _siteController.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + final theme = Theme.of(context); + return Padding( + padding: EdgeInsets.only( + left: 24, + right: 24, + top: 24, + bottom: MediaQuery.of(context).viewInsets.bottom + 24, + ), + child: Form( + key: _formKey, + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Align( + alignment: Alignment.centerLeft, + child: Text( + 'Enter credentials', + style: theme.textTheme.titleLarge, + ), + ), + const SizedBox(height: 8), + Align( + alignment: Alignment.centerLeft, + child: Text( + 'Manual entry is available when a QR code is unavailable.', + style: theme.textTheme.bodyMedium?.copyWith( + color: theme.colorScheme.onSurfaceVariant, + ), + ), + ), + const SizedBox(height: 24), + TextFormField( + controller: _fqdnController, + decoration: const InputDecoration( + labelText: 'Server (fqdn)', + hintText: 'zew.netlab.ninja', + ), + autofillHints: const [AutofillHints.url], + validator: (value) { + if (value == null || value.trim().isEmpty) { + return 'Server is required'; + } + if (value.contains('://')) { + return 'Remove protocol (https://)'; + } + return null; + }, + ), + const SizedBox(height: 16), + TextFormField( + controller: _loginController, + decoration: const InputDecoration( + labelText: 'Login', + hintText: 'fieldtech', + ), + autofillHints: const [AutofillHints.username], + validator: (value) { + if (value == null || value.trim().isEmpty) { + return 'Login is required'; + } + return null; + }, + ), + const SizedBox(height: 16), + TextFormField( + controller: _apiKeyController, + decoration: const InputDecoration( + labelText: 'API Key', + hintText: 'Paste or scan key', + ), + autofillHints: const [AutofillHints.password], + obscureText: true, + validator: (value) { + if (value == null || value.trim().isEmpty) { + return 'API key is required'; + } + if (value.trim().length < 10) { + return 'API key looks too short'; + } + return null; + }, + ), + const SizedBox(height: 16), + TextFormField( + controller: _siteController, + decoration: const InputDecoration( + labelText: 'Site (optional)', + ), + ), + const SizedBox(height: 24), + Row( + children: [ + Expanded( + child: OutlinedButton( + onPressed: () => Navigator.of(context).pop(null), + child: const Text('Cancel'), + ), + ), + const SizedBox(width: 12), + Expanded( + child: FilledButton( + onPressed: () { + if (_formKey.currentState?.validate() != true) { + return; + } + Navigator.of(context).pop({ + 'fqdn': _fqdnController.text.trim(), + 'login': _loginController.text.trim(), + 'apiKey': _apiKeyController.text.trim(), + 'siteName': _siteController.text.trim(), + }); + }, + child: const Text('Continue'), + ), + ), + ], + ), + ], + ), + ), + ); + } +} + +class _DetailRow extends StatelessWidget { + const _DetailRow({ + required this.label, + required this.value, + this.selectable = false, + }); + + final String label; + final String value; + final bool selectable; + + @override + Widget build(BuildContext context) { + final theme = Theme.of(context); + final content = selectable + ? SelectableText( + value, + style: theme.textTheme.bodyLarge, + ) + : Text( + value, + style: theme.textTheme.bodyLarge, + ); + + return Padding( + padding: const EdgeInsets.only(bottom: 12), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + label, + style: theme.textTheme.labelSmall?.copyWith( + color: theme.colorScheme.onSurfaceVariant, + letterSpacing: 0.3, + ), + ), + const SizedBox(height: 4), + content, + ], + ), + ); + } +} diff --git a/lib/features/devices/data/repositories/device_repository.dart b/lib/features/devices/data/repositories/device_repository.dart index d233217..d84d1e7 100644 --- a/lib/features/devices/data/repositories/device_repository.dart +++ b/lib/features/devices/data/repositories/device_repository.dart @@ -3,6 +3,7 @@ import 'dart:async'; import 'package:fpdart/fpdart.dart'; import 'package:logger/logger.dart'; +import 'package:rgnets_fdk/core/config/environment.dart'; import 'package:rgnets_fdk/core/errors/failures.dart'; import 'package:rgnets_fdk/core/services/pagination_service.dart'; import 'package:rgnets_fdk/core/services/performance_monitor_service.dart'; @@ -76,6 +77,14 @@ class DeviceRepositoryImpl implements DeviceRepository { }) async { try { _logger.i('πŸ” DEVICE_REPOSITORY: getDevices() called at ${DateTime.now().toIso8601String()}'); + + if (!EnvironmentConfig.enableRestFallback) { + _logger + ..w('DeviceRepositoryImpl: REST fallback disabled; skipping remote fetch') + ..w('DeviceRepositoryImpl: Returning empty device list until WebSocket feeds are wired'); + await localDataSource.clearCache(); + return const Right([]); + } // Try to use cached data first if valid if (await localDataSource.isCacheValid()) { @@ -144,6 +153,12 @@ class DeviceRepositoryImpl implements DeviceRepository { /// Refresh data in background without blocking UI Future _refreshInBackground() async { try { + if (!EnvironmentConfig.enableRestFallback) { + _logger.d( + 'DeviceRepositoryImpl: Skipping background refresh (REST fallback disabled)', + ); + return; + } _logger.d('DeviceRepositoryImpl: Starting background refresh'); final deviceModels = await dataSource.getDevices(); await localDataSource.cacheDevices(deviceModels); diff --git a/lib/features/rooms/data/repositories/room_repository_impl.dart b/lib/features/rooms/data/repositories/room_repository_impl.dart index c702874..73c0ece 100644 --- a/lib/features/rooms/data/repositories/room_repository_impl.dart +++ b/lib/features/rooms/data/repositories/room_repository_impl.dart @@ -29,7 +29,6 @@ class RoomRepositoryImpl implements RoomRepository { _logger ..i('RoomRepositoryImpl.getRooms() called') ..i('Environment check: isDevelopment=${EnvironmentConfig.isDevelopment}, isStaging=${EnvironmentConfig.isStaging}, isProduction=${EnvironmentConfig.isProduction}'); - // Try to use cached data first if valid (except in development mode) if (localDataSource != null && !EnvironmentConfig.isDevelopment) { final isValid = await localDataSource!.isCacheValid(); @@ -308,4 +307,4 @@ class RoomRepositoryImpl implements RoomRepository { } })(); } -} \ No newline at end of file +} diff --git a/lib/features/scanner/domain/usecases/process_auth_qr.dart b/lib/features/scanner/domain/usecases/process_auth_qr.dart index 8cea32e..4e21da3 100644 --- a/lib/features/scanner/domain/usecases/process_auth_qr.dart +++ b/lib/features/scanner/domain/usecases/process_auth_qr.dart @@ -4,26 +4,46 @@ import 'package:fpdart/fpdart.dart'; import 'package:rgnets_fdk/core/errors/failures.dart'; import 'package:rgnets_fdk/core/usecases/usecase.dart'; -/// Use case for processing authentication QR codes -final class ProcessAuthQr extends UseCase { - const ProcessAuthQr(); - +/// Use case for processing authentication QR codes. +final class ProcessAuthQr + extends UseCase { + ProcessAuthQr({DateTime Function()? clock, Duration? allowedDrift}) + : _now = clock ?? DateTime.now, + _allowedDrift = allowedDrift ?? const Duration(minutes: 15); + + final DateTime Function() _now; + final Duration _allowedDrift; + + static const _timestampKey = 'timestamp'; + static const _apiKeyKey = 'api_key'; + static const _apiKeyAltKey = 'apiKey'; + static const _siteKey = 'site_name'; + static const _siteAltKey = 'siteName'; + static const _loginKey = 'login'; + static const _fqdnKey = 'fqdn'; + static const _signatureKey = 'signature'; + @override - Future> call(ProcessAuthQrParams params) async { + Future> call( + ProcessAuthQrParams params, + ) async { try { - final code = params.qrCode; - - // Try to parse as JSON + final code = params.qrCode.trim(); + if (code.isEmpty) { + return const Left(ValidationFailure(message: 'QR code is empty')); + } + + // Try to parse as JSON. if (code.startsWith('{') && code.endsWith('}')) { final json = jsonDecode(code) as Map; return _extractCredentialsFromJson(json); } - - // Try to parse as key=value format + + // Try to parse as key=value format. if (code.contains('=')) { return _extractCredentialsFromKeyValue(code); } - + return const Left(ValidationFailure(message: 'Invalid QR code format')); } on FormatException catch (e) { return Left(ValidationFailure(message: 'Failed to parse QR code: $e')); @@ -31,69 +51,168 @@ final class ProcessAuthQr extends UseCase return Left(ValidationFailure(message: 'Error processing QR code: $e')); } } - - Either _extractCredentialsFromJson(Map json) { - final fqdn = json['fqdn'] as String?; - final login = json['login'] as String?; - final apiKey = json['apiKey'] as String?; - - if (fqdn == null || login == null || apiKey == null) { - return const Left(ValidationFailure(message: 'Missing required fields in QR code')); - } - - return Right(AuthCredentials( + + Either _extractCredentialsFromJson( + Map json, + ) { + final fqdn = json[_fqdnKey] as String?; + final login = json[_loginKey] as String?; + final apiKey = (json[_apiKeyKey] ?? json[_apiKeyAltKey]) as String?; + final siteName = (json[_siteKey] ?? json[_siteAltKey]) as String?; + final timestamp = json[_timestampKey] as String?; + final signature = json[_signatureKey] as String?; + + return _buildCredentials( fqdn: fqdn, login: login, apiKey: apiKey, - )); + siteName: siteName, + timestamp: timestamp, + signature: signature, + ); } - - Either _extractCredentialsFromKeyValue(String code) { + + Either _extractCredentialsFromKeyValue( + String code, + ) { final credentials = {}; - final lines = code.split('\n'); - - for (final line in lines) { - if (line.contains('=')) { - final parts = line.split('='); - if (parts.length == 2) { - final key = parts[0].trim(); - final value = parts[1].trim(); - credentials[key] = value; - } + final lines = code.split(RegExp(r'[\r\n]+')); + + for (final rawLine in lines) { + final line = rawLine.trim(); + if (line.isEmpty || !line.contains('=')) { + continue; + } + + final separatorIndex = line.indexOf('='); + if (separatorIndex <= 0 || separatorIndex == line.length - 1) { + continue; + } + + final key = line.substring(0, separatorIndex).trim(); + final value = line.substring(separatorIndex + 1).trim(); + if (key.isNotEmpty) { + credentials[key] = value; } } - - final fqdn = credentials['fqdn']; - final login = credentials['login']; - final apiKey = credentials['apiKey']; - - if (fqdn == null || login == null || apiKey == null) { - return const Left(ValidationFailure(message: 'Missing required fields in QR code')); - } - - return Right(AuthCredentials( + + final fqdn = credentials[_fqdnKey]; + final login = credentials[_loginKey]; + final apiKey = credentials[_apiKeyKey] ?? credentials[_apiKeyAltKey]; + final siteName = credentials[_siteKey] ?? credentials[_siteAltKey]; + final timestamp = credentials[_timestampKey]; + final signature = credentials[_signatureKey]; + + return _buildCredentials( fqdn: fqdn, login: login, apiKey: apiKey, - )); + siteName: siteName, + timestamp: timestamp, + signature: signature, + ); + } + + Either _buildCredentials({ + required String? fqdn, + required String? login, + required String? apiKey, + required String? siteName, + required String? timestamp, + required String? signature, + }) { + if (fqdn == null || fqdn.isEmpty) { + return const Left(ValidationFailure(message: 'QR code missing fqdn')); + } + if (!_isValidHost(fqdn)) { + return const Left(ValidationFailure(message: 'Invalid fqdn in QR code')); + } + + if (login == null || login.isEmpty) { + return const Left(ValidationFailure(message: 'QR code missing login')); + } + + if (apiKey == null || apiKey.isEmpty) { + return const Left(ValidationFailure(message: 'QR code missing api key')); + } + + final normalizedSite = siteName?.trim(); + final resolvedSite = (normalizedSite == null || normalizedSite.isEmpty) + ? login + : normalizedSite; + + final now = _now().toUtc(); + + DateTime issuedAt; + final rawTimestamp = timestamp?.trim(); + if (rawTimestamp == null || rawTimestamp.isEmpty) { + issuedAt = now; + } else { + final parsed = DateTime.tryParse(rawTimestamp)?.toUtc(); + if (parsed == null) { + issuedAt = now; + } else { + final drift = now.difference(parsed).abs(); + if (drift > _allowedDrift) { + return Left( + ValidationFailure( + message: 'QR code expired (${drift.inMinutes} minutes old)', + ), + ); + } + issuedAt = parsed; + } + } + + return Right( + AuthCredentials( + fqdn: fqdn, + login: login, + apiKey: apiKey, + siteName: resolvedSite, + issuedAt: issuedAt, + signature: signature, + ), + ); + } + + bool _isValidHost(String host) { + final trimmed = host.trim(); + if (trimmed.isEmpty) { + return false; + } + final uri = Uri.tryParse('https://$trimmed'); + if (uri == null || uri.host.isEmpty || uri.host.contains(' ')) { + return false; + } + final hostPattern = RegExp( + r'^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$', + ); + return hostPattern.hasMatch(uri.host); } } -/// Parameters for processing auth QR +/// Parameters for processing auth QR. class ProcessAuthQrParams { const ProcessAuthQrParams({required this.qrCode}); final String qrCode; } -/// Auth credentials extracted from QR code +/// Auth credentials extracted from QR code. class AuthCredentials { const AuthCredentials({ required this.fqdn, required this.login, required this.apiKey, + required this.siteName, + required this.issuedAt, + this.signature, }); - + final String fqdn; final String login; final String apiKey; -} \ No newline at end of file + final String siteName; + final DateTime issuedAt; + final String? signature; +} diff --git a/lib/features/scanner/presentation/screens/scanner_screen.dart b/lib/features/scanner/presentation/screens/scanner_screen.dart index a7f6f0f..07f604c 100644 --- a/lib/features/scanner/presentation/screens/scanner_screen.dart +++ b/lib/features/scanner/presentation/screens/scanner_screen.dart @@ -7,25 +7,23 @@ import 'package:mobile_scanner/mobile_scanner.dart'; import 'package:rgnets_fdk/core/services/logger_service.dart'; import 'package:rgnets_fdk/core/widgets/widgets.dart'; -import 'package:rgnets_fdk/features/scanner/domain/entities/scan_result.dart' as scanner_entities; +import 'package:rgnets_fdk/features/scanner/domain/entities/scan_result.dart' + as scanner_entities; import 'package:rgnets_fdk/features/scanner/domain/entities/scan_session.dart'; import 'package:rgnets_fdk/features/scanner/domain/usecases/process_auth_qr.dart'; import 'package:rgnets_fdk/features/scanner/presentation/providers/scanner_notifier.dart'; /// QR/Barcode scanner screen class ScannerScreen extends ConsumerStatefulWidget { - - const ScannerScreen({ - super.key, - this.mode, - }); + const ScannerScreen({super.key, this.mode}); final String? mode; @override ConsumerState createState() => _ScannerScreenState(); } -class _ScannerScreenState extends ConsumerState with TickerProviderStateMixin { +class _ScannerScreenState extends ConsumerState + with TickerProviderStateMixin { MobileScannerController? _controller; bool _isCameraActive = false; String? _lastScannedCode; @@ -34,147 +32,218 @@ class _ScannerScreenState extends ConsumerState with TickerProvid DeviceType? _selectedDeviceType; late AnimationController _pulseController; late Animation _pulseAnimation; - + @override void initState() { super.initState(); _initializeScanner(); _initializeAnimations(); } - + void _initializeAnimations() { _pulseController = AnimationController( duration: const Duration(seconds: 1), vsync: this, ); - _pulseAnimation = Tween( - begin: 1, - end: 1.1, - ).animate(CurvedAnimation( - parent: _pulseController, - curve: Curves.easeInOut, - )); + _pulseAnimation = Tween(begin: 1, end: 1.1).animate( + CurvedAnimation(parent: _pulseController, curve: Curves.easeInOut), + ); _pulseController.repeat(reverse: true); } - + void _initializeScanner() { try { - LoggerService.debug('🎯 Initializing scanner controller...', tag: 'Scanner'); - LoggerService.debug('🌐 Platform: ${kIsWeb ? "Web" : "Native"}', tag: 'Scanner'); - + LoggerService.debug( + '🎯 Initializing scanner controller...', + tag: 'Scanner', + ); + LoggerService.debug( + '🌐 Platform: ${kIsWeb ? "Web" : "Native"}', + tag: 'Scanner', + ); + if (kIsWeb) { - LoggerService.debug('🌐 Web platform detected - checking camera support', tag: 'Scanner'); + LoggerService.debug( + '🌐 Web platform detected - checking camera support', + tag: 'Scanner', + ); _checkWebCameraSupport(); } - + _controller = MobileScannerController( detectionSpeed: DetectionSpeed.normal, facing: CameraFacing.back, torchEnabled: false, ); - LoggerService.debug('βœ… Scanner controller initialized successfully', tag: 'Scanner'); + LoggerService.debug( + 'βœ… Scanner controller initialized successfully', + tag: 'Scanner', + ); } on Exception catch (e) { - LoggerService.error('❌ Failed to initialize scanner controller', error: e, tag: 'Scanner'); + LoggerService.error( + '❌ Failed to initialize scanner controller', + error: e, + tag: 'Scanner', + ); // On web or if camera fails, _controller will be null and handled in UI } } - + void _checkWebCameraSupport() { if (kIsWeb) { try { - LoggerService.debug('πŸ” Checking browser camera support...', tag: 'Scanner'); - + LoggerService.debug( + 'πŸ” Checking browser camera support...', + tag: 'Scanner', + ); + // Basic web environment check without dart:html LoggerService.debug('🌐 Running in web environment', tag: 'Scanner'); - LoggerService.debug('πŸ“± Camera support will be tested during runtime', tag: 'Scanner'); - + LoggerService.debug( + 'πŸ“± Camera support will be tested during runtime', + tag: 'Scanner', + ); + // Note: Camera support detection will happen during mobile_scanner initialization - LoggerService.debug('ℹ️ Mobile scanner will handle camera detection', tag: 'Scanner'); + LoggerService.debug( + 'ℹ️ Mobile scanner will handle camera detection', + tag: 'Scanner', + ); } on Exception catch (e) { - LoggerService.error('❌ Error checking web camera support', error: e, tag: 'Scanner'); + LoggerService.error( + '❌ Error checking web camera support', + error: e, + tag: 'Scanner', + ); } } } - + @override void dispose() { - _controller?.dispose(); _countdownTimer?.cancel(); + _controller?.dispose(); + _controller = null; _pulseController.dispose(); super.dispose(); } - + void _handleBarcode(BarcodeCapture capture) { LoggerService.debug('πŸ“· Barcode capture detected', tag: 'Scanner'); - + final scannerState = ref.read(scannerNotifierProvider).valueOrNull; if (scannerState == null) { LoggerService.warning('⚠️ Scanner state is null', tag: 'Scanner'); return; } - + if (!scannerState.isScanning) { - LoggerService.debug('πŸ›‘ Scanner is not in scanning state: ${scannerState.runtimeType}', tag: 'Scanner'); + LoggerService.debug( + 'πŸ›‘ Scanner is not in scanning state: ${scannerState.runtimeType}', + tag: 'Scanner', + ); return; } - + final barcodes = capture.barcodes; LoggerService.debug('πŸ“Š Found ${barcodes.length} barcodes', tag: 'Scanner'); - + for (final barcode in barcodes) { - LoggerService.debug('πŸ” Processing barcode: ${barcode.rawValue}', tag: 'Scanner'); - + LoggerService.debug( + 'πŸ” Processing barcode: ${barcode.rawValue}', + tag: 'Scanner', + ); + if (barcode.rawValue != null && barcode.rawValue != _lastScannedCode) { - LoggerService.debug('βœ… New unique barcode: ${barcode.rawValue}', tag: 'Scanner'); - + LoggerService.debug( + 'βœ… New unique barcode: ${barcode.rawValue}', + tag: 'Scanner', + ); + setState(() { _lastScannedCode = barcode.rawValue; }); - + // Process barcode through scanner notifier - ref.read(scannerNotifierProvider.notifier).processBarcode(barcode.rawValue!); - LoggerService.debug('πŸ“€ Barcode sent to scanner notifier', tag: 'Scanner'); + ref + .read(scannerNotifierProvider.notifier) + .processBarcode(barcode.rawValue!); + LoggerService.debug( + 'πŸ“€ Barcode sent to scanner notifier', + tag: 'Scanner', + ); } else { - LoggerService.debug('πŸ”„ Duplicate or null barcode, skipping', tag: 'Scanner'); + LoggerService.debug( + 'πŸ”„ Duplicate or null barcode, skipping', + tag: 'Scanner', + ); } } } - + Future _startScanSession() async { LoggerService.debug('πŸš€ Starting scan session...', tag: 'Scanner'); - + if (_selectedDeviceType == null) { - LoggerService.debug('❓ No device type selected, showing selection dialog', tag: 'Scanner'); + LoggerService.debug( + '❓ No device type selected, showing selection dialog', + tag: 'Scanner', + ); _showDeviceTypeSelection(); return; } - - LoggerService.debug('πŸ“‹ Selected device type: ${_selectedDeviceType!.name}', tag: 'Scanner'); + + LoggerService.debug( + 'πŸ“‹ Selected device type: ${_selectedDeviceType!.name}', + tag: 'Scanner', + ); try { - LoggerService.debug('🎯 Calling scanner notifier startScanning...', tag: 'Scanner'); - await ref.read(scannerNotifierProvider.notifier).startScanning(_selectedDeviceType!); - LoggerService.debug('βœ… Scanner notifier startScanning completed', tag: 'Scanner'); + LoggerService.debug( + '🎯 Calling scanner notifier startScanning...', + tag: 'Scanner', + ); + await ref + .read(scannerNotifierProvider.notifier) + .startScanning(_selectedDeviceType!); + LoggerService.debug( + 'βœ… Scanner notifier startScanning completed', + tag: 'Scanner', + ); } on Exception catch (e) { - LoggerService.error('❌ Error starting scanner notifier', error: e, tag: 'Scanner'); + LoggerService.error( + '❌ Error starting scanner notifier', + error: e, + tag: 'Scanner', + ); return; } - + setState(() { _isCameraActive = true; _remainingSeconds = 6; }); - - LoggerService.debug('⏰ Camera active: $_isCameraActive, Countdown: $_remainingSeconds', tag: 'Scanner'); - + + LoggerService.debug( + '⏰ Camera active: $_isCameraActive, Countdown: $_remainingSeconds', + tag: 'Scanner', + ); + // Try to start camera, with proper error handling for web and permission issues if (!kIsWeb && _controller != null) { try { LoggerService.debug('πŸ“± Starting native camera...', tag: 'Scanner'); await _controller!.start(); - LoggerService.debug('βœ… Native camera started successfully', tag: 'Scanner'); + LoggerService.debug( + 'βœ… Native camera started successfully', + tag: 'Scanner', + ); } on Exception catch (e) { - LoggerService.error('❌ Failed to start native camera', error: e, tag: 'Scanner'); + LoggerService.error( + '❌ Failed to start native camera', + error: e, + tag: 'Scanner', + ); if (mounted) { ScaffoldMessenger.of(context).showSnackBar( SnackBar( @@ -185,18 +254,33 @@ class _ScannerScreenState extends ConsumerState with TickerProvid } } } else if (kIsWeb) { - LoggerService.debug('🌐 Web platform detected - camera may have limitations', tag: 'Scanner'); + LoggerService.debug( + '🌐 Web platform detected - camera may have limitations', + tag: 'Scanner', + ); if (_controller != null) { try { - LoggerService.debug('🌐 Attempting to start web camera...', tag: 'Scanner'); + LoggerService.debug( + '🌐 Attempting to start web camera...', + tag: 'Scanner', + ); await _controller!.start(); - LoggerService.debug('βœ… Web camera started successfully', tag: 'Scanner'); + LoggerService.debug( + 'βœ… Web camera started successfully', + tag: 'Scanner', + ); } on Exception catch (e) { - LoggerService.error('❌ Web camera failed to start', error: e, tag: 'Scanner'); + LoggerService.error( + '❌ Web camera failed to start', + error: e, + tag: 'Scanner', + ); if (mounted) { ScaffoldMessenger.of(context).showSnackBar( SnackBar( - content: Text('Web camera unavailable: $e\nUse manual input below.'), + content: Text( + 'Web camera unavailable: $e\nUse manual input below.', + ), backgroundColor: Colors.orange, duration: const Duration(seconds: 5), ), @@ -207,44 +291,49 @@ class _ScannerScreenState extends ConsumerState with TickerProvid } _startCountdown(); } - + void _startCountdown() { _countdownTimer?.cancel(); - _countdownTimer = Timer.periodic(const Duration(seconds: 1), (timer) { + _countdownTimer = Timer.periodic(const Duration(seconds: 1), (timer) async { setState(() { _remainingSeconds--; }); - + if (_remainingSeconds <= 0) { timer.cancel(); - _handleSessionTimeout(); + await _handleSessionTimeout(); } }); } - - void _handleSessionTimeout() { + + Future _handleSessionTimeout() async { final scannerState = ref.read(scannerNotifierProvider).valueOrNull; if (scannerState?.session?.isComplete ?? false) { // Complete the session - ref.read(scannerNotifierProvider.notifier).completeSession(); + await ref + .read(scannerNotifierProvider.notifier) + .completeSession(); } - _stopScanning(); + await _stopAndDisposeCamera(); } - - void _stopScanning() { + + Future _stopAndDisposeCamera() async { setState(() { _isCameraActive = false; _remainingSeconds = 6; }); _countdownTimer?.cancel(); try { - _controller?.stop(); + await _controller?.stop(); LoggerService.debug('Camera stopped successfully', tag: 'Scanner'); } on Exception catch (e) { LoggerService.error('Error stopping camera', error: e, tag: 'Scanner'); } + await _controller?.dispose(); + _controller = null; } - + + void _showDeviceTypeSelection() { showDialog( context: context, @@ -252,24 +341,28 @@ class _ScannerScreenState extends ConsumerState with TickerProvid title: const Text('Select Device Type'), content: Column( mainAxisSize: MainAxisSize.min, - children: DeviceType.values.map((type) => - ListTile( - title: Text(type.displayName), - subtitle: Text('${type.abbreviation} - Requires ${_getRequiredBarcodesText(type)}'), - onTap: () { - setState(() { - _selectedDeviceType = type; - }); - Navigator.of(context).pop(); - _startScanSession(); - }, - ), - ).toList(), + children: DeviceType.values + .map( + (type) => ListTile( + title: Text(type.displayName), + subtitle: Text( + '${type.abbreviation} - Requires ${_getRequiredBarcodesText(type)}', + ), + onTap: () { + setState(() { + _selectedDeviceType = type; + }); + Navigator.of(context).pop(); + _startScanSession(); + }, + ), + ) + .toList(), ), ), ); } - + String _getRequiredBarcodesText(DeviceType type) { switch (type) { case DeviceType.accessPoint: @@ -279,14 +372,13 @@ class _ScannerScreenState extends ConsumerState with TickerProvid return '1 barcode (Serial)'; } } - - + Future _processAuthCode(String code) async { - const useCase = ProcessAuthQr(); + final useCase = ProcessAuthQr(); final result = await useCase(ProcessAuthQrParams(qrCode: code)); - - result.fold( - (failure) { + + await result.match( + (failure) async { ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text(failure.message), @@ -294,46 +386,62 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ), ); }, - (credentials) { - // Return credentials to auth screen + (credentials) async { + await _stopAndDisposeCamera(); + if (!mounted) { + return; + } Navigator.of(context).pop({ 'fqdn': credentials.fqdn, 'login': credentials.login, 'apiKey': credentials.apiKey, + 'siteName': credentials.siteName, + 'issuedAt': credentials.issuedAt.toIso8601String(), + if (credentials.signature != null) 'signature': credentials.signature, }); }, ); } - + @override Widget build(BuildContext context) { LoggerService.debug('πŸ—οΈ Building scanner screen UI...', tag: 'Scanner'); - + // Watch scanner state final scannerAsync = ref.watch(scannerNotifierProvider) // Log scanner state changes ..when( - data: (state) => LoggerService.debug('πŸ“Š Scanner state: ${state.runtimeType}', tag: 'Scanner'), - loading: () => LoggerService.debug('⏳ Scanner state: Loading', tag: 'Scanner'), - error: (error, stack) => LoggerService.error('❌ Scanner state: Error - $error', tag: 'Scanner'), + data: (state) => LoggerService.debug( + 'πŸ“Š Scanner state: ${state.runtimeType}', + tag: 'Scanner', + ), + loading: () => + LoggerService.debug('⏳ Scanner state: Loading', tag: 'Scanner'), + error: (error, stack) => LoggerService.error( + '❌ Scanner state: Error - $error', + tag: 'Scanner', + ), ); - + // On web platform, show a different UI since camera might not work if (kIsWeb) { LoggerService.debug('🌐 Rendering web scanner UI', tag: 'Scanner'); return _buildWebScanner(); } - + // Handle auth mode differently if (widget.mode == 'auth') { LoggerService.debug('πŸ” Rendering auth scanner UI', tag: 'Scanner'); return _buildAuthScanner(); } - + LoggerService.debug('πŸ“± Rendering native scanner UI', tag: 'Scanner'); - + // AppBar removed from main scanner - torch and camera controls need relocation - LoggerService.debug('ScannerScreen: AppBar removed, camera controls preserved', tag: 'Scanner'); + LoggerService.debug( + 'ScannerScreen: AppBar removed, camera controls preserved', + tag: 'Scanner', + ); return Scaffold( body: scannerAsync.when( data: _buildScannerBody, @@ -367,7 +475,10 @@ class _ScannerScreenState extends ConsumerState with TickerProvid AppButton( text: 'Retry', onPressed: () { - LoggerService.debug('πŸ”„ Retrying scanner initialization', tag: 'Scanner'); + LoggerService.debug( + 'πŸ”„ Retrying scanner initialization', + tag: 'Scanner', + ); ref.invalidate(scannerNotifierProvider); }, ), @@ -378,25 +489,35 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ), ); } - + Widget _buildAuthScanner() { // AppBar removed from auth scanner - torch control needs relocation - LoggerService.debug('AuthScanner: AppBar removed, torch control preserved', tag: 'Scanner'); - return Scaffold( - body: _buildAuthBody(), + LoggerService.debug( + 'AuthScanner: AppBar removed, torch control preserved', + tag: 'Scanner', ); + return Scaffold(body: _buildAuthBody()); } - + Widget _buildScannerBody(ScannerState state) { - LoggerService.debug('πŸ—οΈ Building scanner body for state: ${state.runtimeType}', tag: 'Scanner'); - + LoggerService.debug( + 'πŸ—οΈ Building scanner body for state: ${state.runtimeType}', + tag: 'Scanner', + ); + if (_controller == null) { - LoggerService.warning('⚠️ Scanner controller is null, showing loading', tag: 'Scanner'); + LoggerService.warning( + '⚠️ Scanner controller is null, showing loading', + tag: 'Scanner', + ); return const Center(child: LoadingIndicator()); } - - LoggerService.debug('πŸ“· Controller available, scanning active: ${state.isScanning}', tag: 'Scanner'); - + + LoggerService.debug( + 'πŸ“· Controller available, scanning active: ${state.isScanning}', + tag: 'Scanner', + ); + return Stack( children: [ // Camera view @@ -404,7 +525,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid controller: _controller, onDetect: state.isScanning ? _handleBarcode : null, ), - + // Debug overlay Positioned( top: 50, @@ -450,30 +571,27 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ), ), ), - + // Scanning overlay - if (state.isScanning && _isCameraActive) - _buildScanningOverlay(state), - + if (state.isScanning && _isCameraActive) _buildScanningOverlay(state), + // Session info panel - if (state.session != null) - _buildSessionInfoPanel(state.session!), - + if (state.session != null) _buildSessionInfoPanel(state.session!), + // Control buttons _buildControlButtons(state), - + // Completion panel - if (state.isComplete) - _buildCompletionPanel(state.session!), + if (state.isComplete) _buildCompletionPanel(state.session!), ], ); } - + Widget _buildAuthBody() { if (_controller == null) { return const Center(child: LoadingIndicator()); } - + return Stack( children: [ // Camera view @@ -482,7 +600,8 @@ class _ScannerScreenState extends ConsumerState with TickerProvid onDetect: (capture) { final barcodes = capture.barcodes; for (final barcode in barcodes) { - if (barcode.rawValue != null && barcode.rawValue != _lastScannedCode) { + if (barcode.rawValue != null && + barcode.rawValue != _lastScannedCode) { setState(() { _lastScannedCode = barcode.rawValue; }); @@ -492,12 +611,10 @@ class _ScannerScreenState extends ConsumerState with TickerProvid } }, ), - + // Auth scanning overlay DecoratedBox( - decoration: const BoxDecoration( - color: Colors.black54, - ), + decoration: const BoxDecoration(color: Colors.black54), child: Stack( children: [ Center( @@ -519,9 +636,9 @@ class _ScannerScreenState extends ConsumerState with TickerProvid right: 0, child: Text( 'Position authentication QR code within frame', - style: Theme.of(context).textTheme.titleMedium?.copyWith( - color: Colors.white, - ), + style: Theme.of( + context, + ).textTheme.titleMedium?.copyWith(color: Colors.white), textAlign: TextAlign.center, ), ), @@ -531,12 +648,10 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ], ); } - + Widget _buildScanningOverlay(ScannerState state) { return DecoratedBox( - decoration: const BoxDecoration( - color: Colors.black54, - ), + decoration: const BoxDecoration(color: Colors.black54), child: Stack( children: [ // Scanning frame @@ -551,9 +666,9 @@ class _ScannerScreenState extends ConsumerState with TickerProvid height: 250, decoration: BoxDecoration( border: Border.all( - color: _remainingSeconds > 3 - ? Theme.of(context).colorScheme.primary - : Colors.orange, + color: _remainingSeconds > 3 + ? Theme.of(context).colorScheme.primary + : Colors.orange, width: 3, ), borderRadius: BorderRadius.circular(20), @@ -563,7 +678,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid }, ), ), - + // Countdown timer Positioned( top: 100, @@ -571,11 +686,14 @@ class _ScannerScreenState extends ConsumerState with TickerProvid right: 0, child: Center( child: Container( - padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 10), + padding: const EdgeInsets.symmetric( + horizontal: 20, + vertical: 10, + ), decoration: BoxDecoration( - color: _remainingSeconds > 3 - ? Theme.of(context).colorScheme.primary - : Colors.orange, + color: _remainingSeconds > 3 + ? Theme.of(context).colorScheme.primary + : Colors.orange, borderRadius: BorderRadius.circular(20), ), child: Text( @@ -588,7 +706,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ), ), ), - + // Instructions Positioned( bottom: 100, @@ -607,9 +725,9 @@ class _ScannerScreenState extends ConsumerState with TickerProvid const SizedBox(height: 8), Text( 'Keep scanning until time runs out', - style: Theme.of(context).textTheme.bodyMedium?.copyWith( - color: Colors.white70, - ), + style: Theme.of( + context, + ).textTheme.bodyMedium?.copyWith(color: Colors.white70), textAlign: TextAlign.center, ), ], @@ -619,7 +737,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ), ); } - + Widget _buildSessionInfoPanel(ScanSession session) { return Positioned( top: 16, @@ -647,7 +765,10 @@ class _ScannerScreenState extends ConsumerState with TickerProvid const Spacer(), if (session.status == ScanSessionStatus.scanning) Container( - padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 4), + padding: const EdgeInsets.symmetric( + horizontal: 8, + vertical: 4, + ), decoration: BoxDecoration( color: Colors.green, borderRadius: BorderRadius.circular(12), @@ -669,13 +790,13 @@ class _ScannerScreenState extends ConsumerState with TickerProvid const SizedBox(height: 8), Text( 'Scanned Barcodes (${session.scannedBarcodes.length}):', - style: Theme.of(context).textTheme.bodySmall?.copyWith( - fontWeight: FontWeight.bold, - ), + style: Theme.of( + context, + ).textTheme.bodySmall?.copyWith(fontWeight: FontWeight.bold), ), const SizedBox(height: 8), - ...session.scannedBarcodes.map((result) => - Padding( + ...session.scannedBarcodes.map( + (result) => Padding( padding: const EdgeInsets.only(bottom: 4), child: Row( children: [ @@ -706,14 +827,16 @@ class _ScannerScreenState extends ConsumerState with TickerProvid value: _getCompletionProgress(session), backgroundColor: Colors.grey[300], valueColor: AlwaysStoppedAnimation( - session.isComplete ? Colors.green : Theme.of(context).colorScheme.primary, + session.isComplete + ? Colors.green + : Theme.of(context).colorScheme.primary, ), ), const SizedBox(height: 4), Text( - session.isComplete - ? 'Device scan complete!' - : _getProgressText(session), + session.isComplete + ? 'Device scan complete!' + : _getProgressText(session), style: Theme.of(context).textTheme.bodySmall?.copyWith( color: session.isComplete ? Colors.green : null, ), @@ -725,7 +848,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ), ); } - + Widget _buildControlButtons(ScannerState state) { return Positioned( bottom: 32, @@ -746,9 +869,11 @@ class _ScannerScreenState extends ConsumerState with TickerProvid child: AppButton( text: 'Stop Scanning', icon: Icons.stop, - onPressed: () { - ref.read(scannerNotifierProvider.notifier).cancelSession(); - _stopScanning(); + onPressed: () async { + await ref + .read(scannerNotifierProvider.notifier) + .cancelSession(); + await _stopAndDisposeCamera(); }, color: Colors.red, ), @@ -759,8 +884,11 @@ class _ScannerScreenState extends ConsumerState with TickerProvid child: AppButton( text: 'Complete', icon: Icons.check, - onPressed: () { - ref.read(scannerNotifierProvider.notifier).completeSession(); + onPressed: () async { + await ref + .read(scannerNotifierProvider.notifier) + .completeSession(); + await _stopAndDisposeCamera(); }, color: Colors.green, ), @@ -780,7 +908,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ), ); } - + Widget _buildCompletionPanel(ScanSession session) { return Positioned( top: 0, @@ -797,11 +925,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid child: Column( mainAxisSize: MainAxisSize.min, children: [ - const Icon( - Icons.check_circle, - size: 64, - color: Colors.green, - ), + const Icon(Icons.check_circle, size: 64, color: Colors.green), const SizedBox(height: 16), Text( 'Scan Complete!', @@ -816,8 +940,8 @@ class _ScannerScreenState extends ConsumerState with TickerProvid textAlign: TextAlign.center, ), const SizedBox(height: 16), - ...session.scannedBarcodes.map((result) => - Padding( + ...session.scannedBarcodes.map( + (result) => Padding( padding: const EdgeInsets.symmetric(vertical: 2), child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, @@ -854,7 +978,9 @@ class _ScannerScreenState extends ConsumerState with TickerProvid text: 'Register', icon: Icons.cloud_upload, onPressed: () { - ref.read(scannerNotifierProvider.notifier).completeSession(); + ref + .read(scannerNotifierProvider.notifier) + .completeSession(); }, color: Colors.green, ), @@ -869,7 +995,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ), ); } - + Color _getBarcodeTypeColor(scanner_entities.BarcodeType type) { switch (type) { case scanner_entities.BarcodeType.serialNumber: @@ -886,7 +1012,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid return Colors.grey; } } - + double _getCompletionProgress(ScanSession session) { switch (session.deviceType) { case DeviceType.accessPoint: @@ -903,7 +1029,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid return session.serialNumber != null ? 1.0 : 0.0; } } - + String _getProgressText(ScanSession session) { switch (session.deviceType) { case DeviceType.accessPoint: @@ -921,16 +1047,16 @@ class _ScannerScreenState extends ConsumerState with TickerProvid } return 'All required barcodes scanned'; case DeviceType.switchDevice: - return session.serialNumber != null - ? 'Serial number scanned' - : 'Scan serial number'; + return session.serialNumber != null + ? 'Serial number scanned' + : 'Scan serial number'; } } - + Widget _buildWebScanner() { final scannerAsync = ref.watch(scannerNotifierProvider); final barcodeController = TextEditingController(); - + // AppBar removed from web scanner LoggerService.debug('WebScanner: AppBar removed', tag: 'Scanner'); return Scaffold( @@ -993,7 +1119,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ), ), const SizedBox(height: 32), - + // Device type selection if (_selectedDeviceType == null) ...[ const Text( @@ -1040,7 +1166,10 @@ class _ScannerScreenState extends ConsumerState with TickerProvid // Manual barcode entry Text( 'Scanning ${_selectedDeviceType?.name ?? 'Device'}', - style: const TextStyle(fontSize: 18, fontWeight: FontWeight.bold), + style: const TextStyle( + fontSize: 18, + fontWeight: FontWeight.bold, + ), ), const SizedBox(height: 8), Text( @@ -1048,9 +1177,10 @@ class _ScannerScreenState extends ConsumerState with TickerProvid style: TextStyle(color: Colors.grey.shade600), ), const SizedBox(height: 24), - + // Show accumulated barcodes - if (state.session != null && state.session!.scannedBarcodes.isNotEmpty) ...[ + if (state.session != null && + state.session!.scannedBarcodes.isNotEmpty) ...[ Card( child: Padding( padding: const EdgeInsets.all(12), @@ -1062,9 +1192,11 @@ class _ScannerScreenState extends ConsumerState with TickerProvid style: TextStyle(fontWeight: FontWeight.bold), ), const SizedBox(height: 8), - ...state.session!.scannedBarcodes.map((barcode) => - Padding( - padding: const EdgeInsets.symmetric(vertical: 4), + ...state.session!.scannedBarcodes.map( + (barcode) => Padding( + padding: const EdgeInsets.symmetric( + vertical: 4, + ), child: Row( children: [ Icon( @@ -1076,7 +1208,9 @@ class _ScannerScreenState extends ConsumerState with TickerProvid Expanded( child: Text( 'Barcode: $barcode', - style: const TextStyle(fontFamily: 'monospace'), + style: const TextStyle( + fontFamily: 'monospace', + ), ), ), ], @@ -1089,7 +1223,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ), const SizedBox(height: 16), ], - + // Manual input field TextField( controller: barcodeController, @@ -1102,7 +1236,9 @@ class _ScannerScreenState extends ConsumerState with TickerProvid onPressed: () { final barcode = barcodeController.text.trim(); if (barcode.isNotEmpty) { - ref.read(scannerNotifierProvider.notifier).processBarcode(barcode); + ref + .read(scannerNotifierProvider.notifier) + .processBarcode(barcode); barcodeController.clear(); } }, @@ -1110,13 +1246,15 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ), onSubmitted: (barcode) { if (barcode.trim().isNotEmpty) { - ref.read(scannerNotifierProvider.notifier).processBarcode(barcode.trim()); + ref + .read(scannerNotifierProvider.notifier) + .processBarcode(barcode.trim()); barcodeController.clear(); } }, ), const SizedBox(height: 24), - + // Action buttons Row( mainAxisAlignment: MainAxisAlignment.center, @@ -1124,21 +1262,25 @@ class _ScannerScreenState extends ConsumerState with TickerProvid if (state.session != null) ...[ ElevatedButton.icon( onPressed: state.session!.isComplete - ? () async { - await ref.read(scannerNotifierProvider.notifier).completeSession(); - if (mounted) { - ScaffoldMessenger.of(context).showSnackBar( - const SnackBar( - content: Text('Device registered successfully'), - backgroundColor: Colors.green, - ), - ); - setState(() { - _selectedDeviceType = null; - }); + ? () async { + await ref + .read(scannerNotifierProvider.notifier) + .completeSession(); + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar( + content: Text( + 'Device registered successfully', + ), + backgroundColor: Colors.green, + ), + ); + setState(() { + _selectedDeviceType = null; + }); + } } - } - : null, + : null, icon: const Icon(Icons.check), label: const Text('Complete Registration'), style: ElevatedButton.styleFrom( @@ -1150,7 +1292,9 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ], OutlinedButton.icon( onPressed: () async { - await ref.read(scannerNotifierProvider.notifier).cancelSession(); + await ref + .read(scannerNotifierProvider.notifier) + .cancelSession(); setState(() { _selectedDeviceType = null; }); @@ -1168,7 +1312,7 @@ class _ScannerScreenState extends ConsumerState with TickerProvid ), ); } - + String _getRequirementsText(DeviceType? type) { switch (type) { case DeviceType.accessPoint: @@ -1181,4 +1325,4 @@ class _ScannerScreenState extends ConsumerState with TickerProvid return ''; } } -} \ No newline at end of file +} diff --git a/lib/features/splash/presentation/screens/splash_screen.dart b/lib/features/splash/presentation/screens/splash_screen.dart index 70fbb18..f9468bc 100644 --- a/lib/features/splash/presentation/screens/splash_screen.dart +++ b/lib/features/splash/presentation/screens/splash_screen.dart @@ -27,24 +27,26 @@ class _SplashScreenState extends ConsumerState { _navigateToNext(); }); } - + Future _navigateToNext() async { // Get logger here instead of in initState final logger = ref.read(loggerProvider) ..i('πŸš€ SPLASH_SCREEN: Navigation flow starting') ..d('SPLASH_SCREEN: Environment: ${EnvironmentConfig.name}') ..d('SPLASH_SCREEN: API Base URL: ${EnvironmentConfig.apiBaseUrl}') - ..d('SPLASH_SCREEN: Use Synthetic Data: ${EnvironmentConfig.useSyntheticData}'); - + ..d( + 'SPLASH_SCREEN: Use Synthetic Data: ${EnvironmentConfig.useSyntheticData}', + ); + if (kIsWeb) { // Navigation starting - environment info available in logger } - + // Simulate initialization logger.d('SPLASH_SCREEN: Starting 2-second initialization delay'); await Future.delayed(const Duration(seconds: 2)); logger.d('SPLASH_SCREEN: Initialization delay complete'); - + // Handle different environments if (EnvironmentConfig.isDevelopment) { logger @@ -60,7 +62,7 @@ class _SplashScreenState extends ConsumerState { } return; } - + if (EnvironmentConfig.isStaging) { // Staging mode: auto-authenticate with interurban credentials from QR code logger @@ -68,27 +70,39 @@ class _SplashScreenState extends ConsumerState { ..d('SPLASH_SCREEN: Starting auto-authentication flow') // Decode the QR code from assets ..d('SPLASH_SCREEN: Decoding QR code from assets'); - + final credentials = await QrDecoder.decodeTestApiQr(); - - logger.d('SPLASH_SCREEN: QR decode complete, credentials: ${credentials != null ? "found" : "not found"}'); - + + logger.d( + 'SPLASH_SCREEN: QR decode complete, credentials: ${credentials != null ? "found" : "not found"}', + ); + if (credentials != null) { logger.i('SPLASH_SCREEN: βœ… QR credentials decoded successfully'); - final fqdn = (credentials['fqdn'] as String?) ?? EnvironmentConfig.apiBaseUrl - .replaceFirst('https://', '') - .replaceFirst('http://', ''); - final login = (credentials['login'] as String?) ?? EnvironmentConfig.apiUsername; - final apiKey = (credentials['apiKey'] as String?) ?? EnvironmentConfig.apiKey; - + final fqdn = + (credentials['fqdn'] as String?) ?? + EnvironmentConfig.apiBaseUrl + .replaceFirst('https://', '') + .replaceFirst('http://', ''); + final login = + (credentials['login'] as String?) ?? EnvironmentConfig.apiUsername; + final apiKey = + (credentials['apiKey'] as String?) ?? EnvironmentConfig.apiKey; + final siteName = + (credentials['site_name'] as String?) ?? + (credentials['siteName'] as String?) ?? + fqdn; + final issuedAt = DateTime.now().toUtc(); + logger ..d('SPLASH_SCREEN: Decoded credentials from QR:') ..d('SPLASH_SCREEN: FQDN: $fqdn') ..d('SPLASH_SCREEN: Login: $login') ..d('SPLASH_SCREEN: API Key: ${apiKey.substring(0, 4)}...') + ..d('SPLASH_SCREEN: Site Name: $siteName') ..d('SPLASH_SCREEN: Full FQDN type: ${fqdn.runtimeType}') ..d('SPLASH_SCREEN: Full Login type: ${login.runtimeType}'); - + try { logger ..i('SPLASH_SCREEN: πŸ” Starting authentication') @@ -97,7 +111,7 @@ class _SplashScreenState extends ConsumerState { ..d('SPLASH_SCREEN: fqdn=$fqdn') ..d('SPLASH_SCREEN: login=$login'); // Auth starting - details available in logger - + // Add timeout to prevent hanging await ref .read(authProvider.notifier) @@ -105,6 +119,8 @@ class _SplashScreenState extends ConsumerState { fqdn: fqdn, login: login, apiKey: apiKey, + siteName: siteName, + issuedAt: issuedAt, ) .timeout( const Duration(seconds: 10), @@ -113,7 +129,7 @@ class _SplashScreenState extends ConsumerState { throw TimeoutException('Authentication timeout'); }, ); - + logger ..i('SPLASH_SCREEN: authenticate() call completed') ..d('SPLASH_SCREEN: Waiting for state to update...') @@ -126,37 +142,41 @@ class _SplashScreenState extends ConsumerState { ..d('SPLASH_SCREEN: Wait complete, checking auth state') ..d('SPLASH_SCREEN: Reading authProvider state'); final authAsync = ref.read(authProvider); - + logger ..d('SPLASH_SCREEN: authAsync type: ${authAsync.runtimeType}') ..d('SPLASH_SCREEN: authAsync hasValue: ${authAsync.hasValue}') ..d('SPLASH_SCREEN: authAsync hasError: ${authAsync.hasError}') ..d('SPLASH_SCREEN: authAsync isLoading: ${authAsync.isLoading}'); - + final authState = authAsync.valueOrNull; logger.i('SPLASH_SCREEN: Auth state = $authState'); // Auth state updated - - final isAuthenticated = authState?.maybeWhen( - authenticated: (user) { - logger - ..i('SPLASH_SCREEN: βœ… User authenticated successfully') - ..d('SPLASH_SCREEN: User: ${user.username}') - ..d('SPLASH_SCREEN: API URL: ${user.apiUrl}'); - return true; - }, - orElse: () { - logger - ..w('SPLASH_SCREEN: ⚠️ Not authenticated') - ..d('SPLASH_SCREEN: Current state: $authState'); - return false; - }, - ) ?? false; - + + final isAuthenticated = + authState?.maybeWhen( + authenticated: (user) { + logger + ..i('SPLASH_SCREEN: βœ… User authenticated successfully') + ..d('SPLASH_SCREEN: User: ${user.username}') + ..d('SPLASH_SCREEN: API URL: ${user.apiUrl}'); + return true; + }, + orElse: () { + logger + ..w('SPLASH_SCREEN: ⚠️ Not authenticated') + ..d('SPLASH_SCREEN: Current state: $authState'); + return false; + }, + ) ?? + false; + logger.d('SPLASH_SCREEN: isAuthenticated = $isAuthenticated'); - + if (isAuthenticated) { - logger.i('SPLASH_SCREEN: πŸŽ‰ Authentication successful, navigating to /home'); + logger.i( + 'SPLASH_SCREEN: πŸŽ‰ Authentication successful, navigating to /home', + ); if (mounted) { logger.d('SPLASH_SCREEN: Widget mounted, performing navigation'); context.go('/home'); @@ -166,9 +186,13 @@ class _SplashScreenState extends ConsumerState { } return; } else { - logger.e('SPLASH_SCREEN: ❌ Authentication failed, redirecting to /auth'); + logger.e( + 'SPLASH_SCREEN: ❌ Authentication failed, redirecting to /auth', + ); if (mounted) { - logger.d('SPLASH_SCREEN: Widget mounted, navigating to auth screen'); + logger.d( + 'SPLASH_SCREEN: Widget mounted, navigating to auth screen', + ); context.go('/auth'); logger.i('SPLASH_SCREEN: Navigation to /auth initiated'); } else { @@ -177,7 +201,9 @@ class _SplashScreenState extends ConsumerState { return; } } on Exception catch (e, stack) { - logger.e('SPLASH_SCREEN: πŸ’₯ Exception during authentication: $e\n$stack'); + logger.e( + 'SPLASH_SCREEN: πŸ’₯ Exception during authentication: $e\n$stack', + ); // Error handled by logger if (mounted) { logger.d('SPLASH_SCREEN: Navigating to /auth due to error'); @@ -186,22 +212,27 @@ class _SplashScreenState extends ConsumerState { return; } } else { - logger.w('SPLASH_SCREEN: ⚠️ Failed to decode QR, using fallback credentials'); + logger.w( + 'SPLASH_SCREEN: ⚠️ Failed to decode QR, using fallback credentials', + ); // Use fallback credentials from EnvironmentConfig // Extract FQDN from the API URL (remove protocol) final fqdn = EnvironmentConfig.apiBaseUrl .replaceFirst('https://', '') .replaceFirst('http://', '') - .split('/').first; // Get just the host part + .split('/') + .first; // Get just the host part final login = EnvironmentConfig.apiUsername; final apiKey = EnvironmentConfig.apiKey; - + final siteName = fqdn; + final issuedAt = DateTime.now().toUtc(); + logger ..d('Using fallback credentials:') ..d('FQDN: $fqdn') ..d('Login: $login') ..d('API Key: ${apiKey.substring(0, 4)}...'); - + try { await ref .read(authProvider.notifier) @@ -209,6 +240,8 @@ class _SplashScreenState extends ConsumerState { fqdn: fqdn, login: login, apiKey: apiKey, + siteName: siteName, + issuedAt: issuedAt, ) .timeout( const Duration(seconds: 10), @@ -217,18 +250,20 @@ class _SplashScreenState extends ConsumerState { throw TimeoutException('Authentication timeout'); }, ); - + // Wait a moment for auth state to update await Future.delayed(const Duration(milliseconds: 500)); - + // Check if authentication was successful final authAsync = ref.read(authProvider); final authState = authAsync.valueOrNull; - final isAuthenticated = authState?.maybeWhen( - authenticated: (_) => true, - orElse: () => false, - ) ?? false; - + final isAuthenticated = + authState?.maybeWhen( + authenticated: (_) => true, + orElse: () => false, + ) ?? + false; + if (isAuthenticated) { logger.i('Fallback authentication completed successfully'); if (mounted) { @@ -249,19 +284,23 @@ class _SplashScreenState extends ConsumerState { return; } } - + // Production mode: check if user has stored credentials logger.i('SPLASH_SCREEN: 🏭 Production mode - checking stored credentials'); final storageService = ref.read(storageServiceProvider); final hasCredentials = storageService.isAuthenticated; logger.d('SPLASH_SCREEN: Has stored credentials: $hasCredentials'); - + if (mounted) { if (hasCredentials) { - logger.i('SPLASH_SCREEN: βœ… Stored credentials found, navigating to /home'); + logger.i( + 'SPLASH_SCREEN: βœ… Stored credentials found, navigating to /home', + ); context.go('/home'); } else { - logger.i('SPLASH_SCREEN: πŸ”“ No stored credentials, navigating to /auth'); + logger.i( + 'SPLASH_SCREEN: πŸ”“ No stored credentials, navigating to /auth', + ); context.go('/auth'); } } else { @@ -298,18 +337,12 @@ class _SplashScreenState extends ConsumerState { const SizedBox(height: 40), const Text( 'RG Nets Field Deployment Kit', - style: TextStyle( - fontSize: 24, - fontWeight: FontWeight.w600, - ), + style: TextStyle(fontSize: 24, fontWeight: FontWeight.w600), ), const SizedBox(height: 10), Text( 'For rXg Network Management', - style: TextStyle( - fontSize: 16, - color: Colors.grey[400], - ), + style: TextStyle(fontSize: 16, color: Colors.grey[400]), ), const SizedBox(height: 60), const CircularProgressIndicator( @@ -320,4 +353,4 @@ class _SplashScreenState extends ConsumerState { ), ); } -} \ No newline at end of file +} diff --git a/lib/main_staging_debug.dart b/lib/main_staging_debug.dart deleted file mode 100644 index b74fc43..0000000 --- a/lib/main_staging_debug.dart +++ /dev/null @@ -1,62 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_riverpod/flutter_riverpod.dart'; -import 'package:go_router/go_router.dart'; -import 'package:rgnets_fdk/core/config/environment.dart'; -import 'package:rgnets_fdk/core/config/logging_config.dart'; -import 'package:rgnets_fdk/core/providers/core_providers.dart'; -import 'package:rgnets_fdk/core/services/logger_service.dart'; -import 'package:rgnets_fdk/core/theme/app_theme.dart'; -import 'package:rgnets_fdk/features/debug/debug_screen.dart'; -import 'package:shared_preferences/shared_preferences.dart'; - -void main() async { - WidgetsFlutterBinding.ensureInitialized(); - // Set environment to staging - uses interurban test API with auto-auth - EnvironmentConfig.setEnvironment(Environment.staging); - LoggerService.configure(level: LogLevel.debug); - LoggerService.info( - 'πŸš€ STAGING DEBUG APP STARTING - main_staging_debug.dart entry point', - ); - LoggerService.info('πŸ“Š SETTING ENVIRONMENT TO STAGING'); - - LoggerService.info('πŸ”§ INITIALIZING PROVIDERS'); - // Initialize providers - final sharedPreferences = await SharedPreferences.getInstance(); - - LoggerService.info('πŸ—οΈ LAUNCHING DEBUG APP'); - runApp( - ProviderScope( - overrides: [ - sharedPreferencesProvider.overrideWithValue(sharedPreferences), - ], - child: const FDKDebugApp(), - ), - ); -} - -class FDKDebugApp extends StatelessWidget { - const FDKDebugApp({super.key}); - - @override - Widget build(BuildContext context) { - // Simple router that goes directly to debug screen - final router = GoRouter( - initialLocation: '/debug', - routes: [ - GoRoute( - path: '/debug', - builder: (context, state) => const DebugScreen(), - ), - ], - ); - - return MaterialApp.router( - title: 'RG Nets FDK Debug (Staging)', - debugShowCheckedModeBanner: false, - theme: AppTheme.darkTheme, - darkTheme: AppTheme.darkTheme, - themeMode: ThemeMode.dark, - routerConfig: router, - ); - } -} diff --git a/pubspec.lock b/pubspec.lock index 9bb92f2..17f7b9d 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1413,7 +1413,7 @@ packages: source: hosted version: "1.0.1" web_socket_channel: - dependency: transitive + dependency: "direct main" description: name: web_socket_channel sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8 diff --git a/pubspec.yaml b/pubspec.yaml index 779dc85..b4eafbb 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -60,6 +60,7 @@ dependencies: sqlite3_flutter_libs: ^0.5.25 url_launcher: ^6.3.1 uuid: ^4.5.1 + web_socket_channel: ^3.0.3 dev_dependencies: build_runner: ^2.4.8 drift_dev: ^2.21.0 diff --git a/scripts/run_fake_gateway.sh b/scripts/run_fake_gateway.sh new file mode 100755 index 0000000..366db4a --- /dev/null +++ b/scripts/run_fake_gateway.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash + +# Convenience wrapper to launch the fake WebSocket gateway. +# Mirrors the default dev configuration used by EnvironmentConfig. + +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)" + +cd "$PROJECT_ROOT" + +echo "Starting fake WebSocket gateway..." +echo "Listening on ws://127.0.0.1:9443/ws (override with --host/--port/--path)." + +dart run tool/fake_websocket_gateway.dart "$@" diff --git a/test/features/auth/credential_sheets_test.dart b/test/features/auth/credential_sheets_test.dart new file mode 100644 index 0000000..01e1857 --- /dev/null +++ b/test/features/auth/credential_sheets_test.dart @@ -0,0 +1,55 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; +import 'package:rgnets_fdk/features/auth/presentation/widgets/credential_approval_sheet.dart'; + +void main() { + testWidgets('CredentialApprovalSheet toggles API key visibility', (tester) async { + const apiKey = 'ABCDEFGHIJKLMNOP'; + await tester.pumpWidget( + const MaterialApp( + home: Scaffold( + body: CredentialApprovalSheet( + fqdn: 'zew.netlab.ninja', + login: 'fieldtech', + apiKey: apiKey, + ), + ), + ), + ); + + expect(find.textContaining('β€’β€’β€’β€’'), findsOneWidget); + + await tester.tap(find.byIcon(Icons.visibility)); + await tester.pumpAndSettle(); + + expect(find.text(apiKey), findsOneWidget); + }); + + testWidgets('ManualCredentialEntrySheet validates required fields', (tester) async { + await tester.pumpWidget( + const MaterialApp( + home: Scaffold( + body: ManualCredentialEntrySheet(), + ), + ), + ); + + await tester.tap(find.text('Continue')); + await tester.pump(); + + expect(find.text('Server is required'), findsOneWidget); + expect(find.text('Login is required'), findsOneWidget); + expect(find.text('API key is required'), findsOneWidget); + + await tester.enterText(find.byType(TextFormField).at(0), 'zew.netlab.ninja'); + await tester.enterText(find.byType(TextFormField).at(1), 'fieldtech'); + await tester.enterText(find.byType(TextFormField).at(2), '1234567890'); + + await tester.tap(find.text('Continue')); + await tester.pump(); + + expect(find.text('Server is required'), findsNothing); + expect(find.text('Login is required'), findsNothing); + expect(find.text('API key is required'), findsNothing); + }); +} diff --git a/test/features/scanner/process_auth_qr_test.dart b/test/features/scanner/process_auth_qr_test.dart new file mode 100644 index 0000000..a813981 --- /dev/null +++ b/test/features/scanner/process_auth_qr_test.dart @@ -0,0 +1,144 @@ +import 'package:flutter_test/flutter_test.dart'; +import 'package:rgnets_fdk/features/scanner/domain/usecases/process_auth_qr.dart'; + +void main() { + group('ProcessAuthQr', () { + final fixedNow = DateTime.utc(2025, 1, 1, 12, 0, 0); + ProcessAuthQr buildUseCase() => ProcessAuthQr(clock: () => fixedNow); + + test('parses valid JSON payload', () async { + final useCase = buildUseCase(); + final payload = + ''' + { + "fqdn": "vgw1-01.location.mdu.attwifi.com", + "login": "fieldtech", + "api_key": "secret-key", + "site_name": "Dallas Interurban", + "timestamp": "${fixedNow.toIso8601String()}", + "signature": "abc123" + } + '''; + + final result = await useCase( + ProcessAuthQrParams(qrCode: payload), + ); + + expect(result.isRight(), isTrue); + result.match( + (failure) => fail('Expected success but got ${failure.message}'), + (credentials) { + expect(credentials.fqdn, 'vgw1-01.location.mdu.attwifi.com'); + expect(credentials.login, 'fieldtech'); + expect(credentials.apiKey, 'secret-key'); + expect(credentials.siteName, 'Dallas Interurban'); + expect(credentials.issuedAt, fixedNow); + expect(credentials.signature, 'abc123'); + }, + ); + }); + + test('defaults site name to login when missing', () async { + final useCase = buildUseCase(); + final payload = + ''' + { + "fqdn": "vgw1-01.location.mdu.attwifi.com", + "login": "fieldtech", + "api_key": "secret-key", + "timestamp": "${fixedNow.toIso8601String()}" + } + '''; + + final result = await useCase( + ProcessAuthQrParams(qrCode: payload), + ); + + expect(result.isRight(), isTrue); + result.match( + (failure) => fail('Expected success but got ${failure.message}'), + (credentials) { + expect(credentials.siteName, 'fieldtech'); + }, + ); + }); + + test('defaults timestamp to now when missing', () async { + final useCase = buildUseCase(); + const payload = + ''' + { + "fqdn": "vgw1-01.location.mdu.attwifi.com", + "login": "fieldtech", + "api_key": "secret-key", + "site_name": "Dallas Interurban" + } + '''; + + final result = await useCase( + const ProcessAuthQrParams(qrCode: payload), + ); + + expect(result.isRight(), isTrue); + result.match( + (failure) => fail('Expected success but got ${failure.message}'), + (credentials) { + expect(credentials.issuedAt, fixedNow); + }, + ); + }); + + test('rejects expired timestamp', () async { + final useCase = buildUseCase(); + final staleTime = fixedNow.subtract(const Duration(minutes: 16)); + final payload = + ''' + { + "fqdn": "vgw1-01.location.mdu.attwifi.com", + "login": "fieldtech", + "api_key": "secret-key", + "site_name": "Dallas Interurban", + "timestamp": "${staleTime.toIso8601String()}" + } + '''; + + final result = await useCase(ProcessAuthQrParams(qrCode: payload)); + + expect(result.isLeft(), isTrue); + }); + + test('parses key=value payload', () async { + final useCase = buildUseCase(); + final payload = + ''' +fqdn=vgw1-01.location.mdu.attwifi.com +login=fieldtech +api_key=secret-key +site_name=Dallas Interurban +timestamp=${fixedNow.toIso8601String()} +'''; + + final result = await useCase(ProcessAuthQrParams(qrCode: payload)); + + expect(result.isRight(), isTrue); + }); + + test('rejects invalid host', () async { + final useCase = buildUseCase(); + final payload = + ''' + { + "fqdn": "invalid host", + "login": "fieldtech", + "api_key": "secret-key", + "site_name": "Dallas Interurban", + "timestamp": "${fixedNow.toIso8601String()}" + } + '''; + + final result = await useCase(ProcessAuthQrParams(qrCode: payload)); + + expect(result.isLeft(), isTrue); + }); + }); +} diff --git a/tool/fake_websocket_gateway.dart b/tool/fake_websocket_gateway.dart new file mode 100644 index 0000000..93ebf01 --- /dev/null +++ b/tool/fake_websocket_gateway.dart @@ -0,0 +1,331 @@ +import 'dart:async'; +import 'dart:convert'; +import 'dart:io'; + +/// Simple WebSocket gateway simulator used during Phase 2. +/// Goal: let the Flutter client exercise auth handshake, heartbeats, +/// and event streams before the real backend is live. +Future main(List args) async { + final config = _GatewayConfig.fromArgs(args); + final server = await _startServer(config); + + stdout + ..writeln( + 'Fake gateway running on ws://${config.host}:${config.port}${config.path}', + ) + ..writeln('Press CTRL+C to stop.'); + + await ProcessSignal.sigint.watch().first; + stdout.writeln('\nStopping fake gateway...'); + await server.close(); + exit(0); +} + +Future _startServer(_GatewayConfig config) async { + final httpServer = await HttpServer.bind(config.host, config.port); + final clients = <_ClientConnection>{}; + + unawaited(_serveRequests(httpServer, clients, config)); + return httpServer; +} + +Future _serveRequests( + HttpServer httpServer, + Set<_ClientConnection> clients, + _GatewayConfig config, +) async { + await for (final request in httpServer) { + if (request.uri.path != config.path) { + final response = request.response + ..statusCode = HttpStatus.notFound + ..write('Not Found'); + await response.close(); + continue; + } + + // Closing handled by _ClientConnection.dispose(). + // ignore: close_sinks + final socket = await WebSocketTransformer.upgrade(request); + final client = _ClientConnection(socket, config); + if (config.verbose) { + stdout.writeln( + '[gateway] client connected ${request.connectionInfo?.remoteAddress.address}:${request.connectionInfo?.remotePort}', + ); + } + clients.add(client); + + socket.listen( + (raw) => _handleMessage(raw, client, clients, config), + onError: (Object error) { + stderr.writeln('Socket error: $error'); + clients.remove(client); + }, + onDone: () { + if (config.verbose) { + stdout.writeln('[gateway] client disconnected ${client.id}'); + } + clients.remove(client); + client.dispose(); + }, + ); + } +} + +void _handleMessage( + dynamic raw, + _ClientConnection client, + Set<_ClientConnection> clients, + _GatewayConfig config, +) { + try { + final message = raw is String + ? jsonDecode(raw) as Map + : jsonDecode(utf8.decode(raw as List)) as Map; + final type = message['type'] as String? ?? ''; + + if (type == 'auth.init') { + if (config.verbose) { + stdout.writeln( + '[gateway] auth.init received: ${jsonEncode(message['payload'])}', + ); + } + _handleAuthInit(message, client, config); + return; + } + + if (type.startsWith('cmd/')) { + if (config.verbose) { + stdout.writeln('[gateway] command received: $type'); + } + client.socket.add( + jsonEncode({ + 'type': 'cmd.ack', + 'payload': { + 'command': type, + 'receivedAt': DateTime.now().toUtc().toIso8601String(), + }, + }), + ); + return; + } + + // Echo unknown types for visibility. + client.socket.add( + jsonEncode({ + 'type': 'system.warning', + 'payload': {'message': 'Unknown message type "$type"'}, + }), + ); + } on Object catch (e) { + stderr.writeln('Failed to decode message: $e'); + client.socket.add( + jsonEncode({ + 'type': 'system.error', + 'payload': {'message': 'Invalid payload', 'error': e.toString()}, + }), + ); + } +} + +void _handleAuthInit( + Map message, + _ClientConnection client, + _GatewayConfig config, +) { + // WebSocket closure is managed by _ClientConnection.dispose(). + // ignore: close_sinks + final socket = client.socket; + final payload = message['payload'] as Map? ?? const {}; + final timestamp = payload['timestamp'] as String?; + final issuedAt = timestamp != null ? DateTime.tryParse(timestamp) : null; + final now = DateTime.now().toUtc(); + + if (issuedAt == null || + (now.difference(issuedAt.toUtc()).abs() > const Duration(minutes: 15))) { + socket.add( + jsonEncode({ + 'type': 'auth.error', + 'payload': {'message': 'Timestamp missing or too old'}, + }), + ); + return; + } + + socket.add( + jsonEncode({ + 'type': 'auth.ack', + 'payload': { + 'sessionToken': 'fake-token-${client.id}', + 'expiresAt': now.add(const Duration(hours: 2)).toIso8601String(), + 'user': { + 'login': payload['login'] ?? 'unknown', + 'siteName': payload['site_name'] ?? 'Unknown Site', + }, + }, + }), + ); + + client + ..startHeartbeat() + ..startBroadcasts(); + if (config.verbose) { + stdout.writeln('[gateway] auth.ack sent to client ${client.id}'); + } +} + +class _ClientConnection { + _ClientConnection(this.socket, this.config) : id = _idCounter++; + + final WebSocket socket; + final _GatewayConfig config; + final int id; + Timer? _heartbeatTimer; + Timer? _broadcastTimer; + + void startHeartbeat() { + _heartbeatTimer?.cancel(); + _heartbeatTimer = Timer.periodic(config.heartbeatInterval, (_) { + socket.add( + jsonEncode({ + 'type': 'system.heartbeat', + 'payload': {'timestamp': DateTime.now().toUtc().toIso8601String()}, + }), + ); + if (config.verbose) { + stdout.writeln('[gateway] heartbeat -> client $id'); + } + }); + } + + void startBroadcasts() { + _broadcastTimer?.cancel(); + _broadcastTimer = Timer.periodic(config.broadcastInterval, (_) { + final now = DateTime.now().toUtc().toIso8601String(); + final messages = [ + { + 'type': 'devices.summary', + 'payload': { + 'generatedAt': now, + 'devices': [ + { + 'id': 1, + 'name': 'Room AP', + 'status': 'online', + 'pms_room_id': 1001, + }, + { + 'id': 2, + 'name': 'Hallway Switch', + 'status': 'offline', + 'pms_room_id': null, + }, + ], + }, + }, + { + 'type': 'rooms.summary', + 'payload': { + 'generatedAt': now, + 'rooms': [ + { + 'id': 1001, + 'name': 'Room 101', + 'deviceCount': 1, + 'readiness': 'READY', + }, + { + 'id': 1002, + 'name': 'Room 102', + 'deviceCount': 0, + 'readiness': 'MISSING_DATA', + }, + ], + }, + }, + { + 'type': 'scanner.events', + 'payload': { + 'event': 'scan.session.update', + 'timestamp': now, + 'deviceType': 'AP', + 'barcodeCount': 2, + 'status': 'complete', + }, + }, + ]; + + for (final message in messages) { + socket.add(jsonEncode(message)); + } + if (config.verbose) { + stdout.writeln('[gateway] broadcast -> client $id'); + } + }); + } + + void dispose() { + _heartbeatTimer?.cancel(); + _broadcastTimer?.cancel(); + socket.close(); + } +} + +class _GatewayConfig { + const _GatewayConfig({ + required this.host, + required this.port, + required this.path, + required this.heartbeatInterval, + required this.broadcastInterval, + required this.verbose, + }); + + factory _GatewayConfig.fromArgs(List args) { + var host = '127.0.0.1'; + var port = 9443; + var path = '/ws'; + var heartbeat = const Duration(seconds: 30); + var broadcast = const Duration(seconds: 10); + var verbose = false; + + for (final arg in args) { + if (arg.startsWith('--host=')) { + host = arg.split('=').last; + } else if (arg.startsWith('--port=')) { + port = int.tryParse(arg.split('=').last) ?? port; + } else if (arg.startsWith('--path=')) { + path = arg.split('=').last; + } else if (arg.startsWith('--heartbeat=')) { + final seconds = int.tryParse(arg.split('=').last); + if (seconds != null) { + heartbeat = Duration(seconds: seconds); + } + } else if (arg.startsWith('--broadcast=')) { + final seconds = int.tryParse(arg.split('=').last); + if (seconds != null) { + broadcast = Duration(seconds: seconds); + } + } else if (arg == '--verbose') { + verbose = true; + } + } + + return _GatewayConfig( + host: host, + port: port, + path: path.startsWith('/') ? path : '/$path', + heartbeatInterval: heartbeat, + broadcastInterval: broadcast, + verbose: verbose, + ); + } + + final String host; + final int port; + final String path; + final Duration heartbeatInterval; + final Duration broadcastInterval; + final bool verbose; +} + +int _idCounter = 1; diff --git a/tool/ws_auth_smoke.dart b/tool/ws_auth_smoke.dart new file mode 100644 index 0000000..3c1df53 --- /dev/null +++ b/tool/ws_auth_smoke.dart @@ -0,0 +1,101 @@ +import 'dart:async'; +import 'dart:convert'; +import 'dart:io'; + +import 'package:web_socket_channel/web_socket_channel.dart'; + +Future main(List args) async { + final env = Platform.environment; + final fqdn = _argValue(args, '--fqdn') ?? env['WS_FQDN'] ?? 'zew.netlab.ninja'; + final login = + _argValue(args, '--login') ?? env['WS_LOGIN'] ?? 'fieldtech'; + final apiKey = + _argValue(args, '--api-key') ?? env['WS_API_KEY'] ?? 'replace-me'; + final site = + _argValue(args, '--site') ?? env['WS_SITE'] ?? 'Lab A'; + final wsUrl = + _argValue(args, '--url') ?? env['WS_URL'] ?? 'wss://$fqdn/ws'; + + final uri = Uri.parse(wsUrl); + stdout.writeln('Connecting to $uri as $login...'); + + final channel = WebSocketChannel.connect(uri); + final handshake = { + 'type': 'auth.init', + 'payload': { + 'fqdn': fqdn, + 'login': login, + 'api_key': apiKey, + 'site_name': site, + 'timestamp': DateTime.now().toUtc().toIso8601String(), + }, + }; + + unawaited(Future.delayed(const Duration(milliseconds: 100), () { + channel.sink.add(jsonEncode(handshake)); + })); + + final completer = Completer(); + late final StreamSubscription sub; + sub = channel.stream.listen( + (event) { + final message = _decode(event); + final type = message['type']?.toString() ?? 'unknown'; + if (type == 'auth.ack') { + stdout.writeln('βœ… auth.ack received: ${jsonEncode(message)}'); + completer.complete(0); + sub.cancel(); + channel.sink.close(); + } else if (type == 'auth.error') { + stderr.writeln('❌ auth.error: ${jsonEncode(message)}'); + completer.complete(1); + sub.cancel(); + channel.sink.close(); + } else { + stdout.writeln('β†ͺ️ $type: ${jsonEncode(message)}'); + } + }, + onError: (Object error) { + stderr.writeln('WebSocket error: $error'); + if (!completer.isCompleted) { + completer.complete(1); + } + }, + onDone: () { + if (!completer.isCompleted) { + stderr.writeln('Connection closed before auth response'); + completer.complete(1); + } + }, + ); + + final exitCode = await completer.future.timeout( + const Duration(seconds: 15), + onTimeout: () { + stderr.writeln('Timed out waiting for auth response'); + sub.cancel(); + channel.sink.close(); + return 1; + }, + ); + + exit(exitCode); +} + +String? _argValue(List args, String key) { + final index = args.indexOf(key); + if (index == -1 || index + 1 >= args.length) { + return null; + } + return args[index + 1]; +} + +Map _decode(dynamic data) { + if (data is String) { + return jsonDecode(data) as Map; + } + if (data is List) { + return jsonDecode(utf8.decode(data)) as Map; + } + return const {}; +} From 95ef29868d256f6ff3a960ea91a6e64edf548e2c Mon Sep 17 00:00:00 2001 From: Zachary Wilhite Date: Mon, 5 Jan 2026 17:15:15 -0800 Subject: [PATCH 4/6] Getting upt to date. --- .DS_Store | Bin 10244 -> 10244 bytes OldAppReport.txt | 68 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 OldAppReport.txt diff --git a/.DS_Store b/.DS_Store index 94979905e5201cfb7888e528471ef917160e465f..cbcf9349955e0f399dec41fe8125409b34fa37ad 100644 GIT binary patch delta 37 tcmZn(XbG6$C7U^hRb%4Qyc?aZ4$3ybhfY%ti&uJDUxv!N(6GXV8N3>N?Z delta 72 zcmZn(XbG6$aFU^hRb>Si8+?aZni49N`n3}p Date: Tue, 6 Jan 2026 12:44:09 -0800 Subject: [PATCH 5/6] Pushing implementation plan --- ImplementationPlan.txt | 988 ++++++ OldAppReport.txt | 232 +- lib/core/providers/websocket_providers.dart | 1 + .../notification_generation_service.dart | 173 +- lib/core/services/websocket_service.dart | 105 +- .../presentation/providers/auth_notifier.dart | 261 +- log.txt | 2901 +++++++++++++++++ memoryissue.txt | 239 ++ 8 files changed, 4641 insertions(+), 259 deletions(-) create mode 100644 ImplementationPlan.txt create mode 100644 log.txt create mode 100644 memoryissue.txt diff --git a/ImplementationPlan.txt b/ImplementationPlan.txt new file mode 100644 index 0000000..8e802e9 --- /dev/null +++ b/ImplementationPlan.txt @@ -0,0 +1,988 @@ +Implementation Plan (Iteration 10 - RxgChannel-aligned) +Goal: Rebuild FDK app to match ATT-FE-Tool functionality using RxgChannel WebSocket API +Confidence Score: 100/100 + +================================================================================ +1) WEBSOCKET SYSTEM DESIGN +================================================================================ + +1.1 Connection and Session Lifecycle +- States: disconnected -> connecting -> authorizing -> loading_initial -> ready -> degraded -> reconnecting +- Authentication: The WebSocket connection is authenticated during the ActionCable connection handshake using one of: + - Authorization header: `Authorization: Bearer ` + - Query param: `?api_key=` (fallback if headers are not supported) + - Session cookie (admin/account web sessions) +- No auth.login/auth.result exchange; the server identifies the user during the connection handshake. +- Reconnection: Reconnect with the same API key/session cookie. If rejected (401/403), prompt for credentials again. +- Secure Transport: Always use `wss://` and the configured ActionCable mount path. + +1.2 Message Envelope +ActionCable wraps all messages. The client sends `subscribe` and `message` commands +with a JSON `identifier` and JSON `data` payload. The server responds with simple +JSON objects (no nested envelope) and an `action` field. +```json +// Subscribe to RxgChannel +{"command":"subscribe","identifier":"{\"channel\":\"RxgChannel\"}"} + +// Invoke a channel method (data is a JSON string) +{"command":"message","identifier":"{\"channel\":\"RxgChannel\"}","data":"{\"action\":\"resource_action\",\"resource_type\":\"access_points\",\"crud_action\":\"index\",\"page\":1,\"request_id\":\"req-1\"}"} +``` + +1.3 Core Message Types +Channel events (server -> client): +- connected // initial connection ack (action: "connected") +- subscription_confirmed // resource subscription added/removed +- subscription_rejected // bad resource or permission denied +- current_subscriptions // list of resource types +- resource_response // CRUD responses + broadcasts +- capabilities / all_capabilities +- error // status + error string + +Channel methods (client -> server data.action): +- subscribe_to_resource -> { resource_type } +- unsubscribe_from_resource -> { resource_type } +- get_subscriptions -> {} +- get_capabilities -> { resource_type? } +- resource_action -> { resource_type, crud_action, id?, params?, request_id? } +- create_resource -> { resource_type, params, request_id? } +- update_resource -> { resource_type, id, params, request_id? } +- destroy_resource -> { resource_type, id, request_id? } + +Extra actions are invoked via `resource_action` with `crud_action` set to the action name +defined on the controller (discoverable via get_capabilities). + +1.4 Initial Load and Synchronization +To prevent race conditions where broadcasts arrive before the initial state is loaded: +1. State: The client enters a `loading_initial` state after the ActionCable connection is established. +2. Queueing: While in this state, all incoming `resource_response` broadcasts are queued. +3. Initial Loads: The client issues `resource_action` index requests for all required resource types + (access_points, media_converters, switch_devices, pms_rooms, health_notices, pms_properties) and paginates using `page`/`page_size`. +4. Handling Pagination: Use `count`, `page`, `page_size`, `total_pages` to request all pages. +5. Applying Initial Data: Populate the store with the full result sets. +6. Processing Queue: Transition to `ready` and apply queued broadcasts in arrival order. +7. Normal Operation: Apply `resource_response` messages in real time. + +1.5 Data Versioning +- Prefer server as source of truth; no explicit version field is guaranteed. +- If a resource includes `updated_at`, use it to ignore stale updates. +- Otherwise, apply last-write-wins in arrival order and rely on server errors for conflicts. + +1.6 Resource Type Mapping (rXg) +- Devices: + - Access Points: resource_type = access_points + - ONTs (Media Converters): resource_type = media_converters + - Switches: resource_type = switch_devices +- Rooms: resource_type = pms_rooms +- Issues: resource_type = health_notices +- Property metadata/name: resource_type = pms_properties (index/show) +- Speed tests: resource_type = speed_test_results (create/list) + +1.7 Resource List by Screen (Single Checklist) +| Screen | Primary Resources | Key Actions | +|--------|-------------------|-------------| +| OnboardingView | none | local-only | +| AuthScreen | none | connect ActionCable with api_key | +| MainViewUnified | access_points, media_converters, switch_devices, pms_rooms, health_notices, pms_properties | index loads + subscribe_to_resource | +| HomeView | pms_properties, health_notices, access_points, media_converters, switch_devices, pms_rooms | index + derived metrics | +| DevicesView | access_points, media_converters, switch_devices | index, search/order, destroy_resource | +| IssuesView | health_notices | index, search/order | +| RoomReadinessView | pms_rooms, access_points, media_converters, health_notices | index + derived status | +| RoomDetailView | pms_rooms, access_points, media_converters, health_notices, speed_test_results | show/index filtered by room_id/pms_room_id | +| DeviceDetailView (AP) | access_points, health_notices, speed_test_results | show, resource_action led, update_resource images | +| DeviceDetailView (ONT) | media_converters, health_notices | show, update_resource images | +| DeviceDetailView (Switch) | switch_devices, health_notices | show | +| NoteEditView | devices | update_resource note | +| BarcodeScanner | access_points, media_converters, switch_devices, pms_rooms | register_ap_device/register_ont_device, create/update | +| ConnectionView | none | get_subscriptions, disconnect/reconnect | + +================================================================================ +2) DATA STORE DESIGN +================================================================================ + +2.1 In-Memory State Structure +``` +AppState { + connection: { + status: disconnected|connecting|authorizing|loading_initial|ready|degraded|reconnecting, + latencyMs: number, + lastHeartbeat: DateTime, + reconnectAttempts: number + }, + credentials: { + fqdn: string, + username: string, + apiKey: string, // Long-lived, stored securely + isAuthenticated: bool + }, + property: { + name: string, + metadata: {} + }, + devices: Map, + rooms: Map, // pms_rooms resource + issues: Map, // health_notices resource + images: Map>, + speedtests: Map>, + onboarding: Map, + commandQueue: List, + updateQueue: List, // For initial-load sync + + // Derived (computed on access) + devicesByRoom: computed, + issuesByDevice: computed, + roomMetrics: computed +} +``` +(The rest of section 2 remains the same) + +2.3 Selectors (Derived State) +- selectDeviceById(id) -> Device? +- selectDevicesByType(type) -> List +- selectDevicesByRoom(roomId) -> List +- selectOnlineDeviceCount() -> int +- selectOfflineDeviceCount() -> int +- selectDeviceCountByType(type) -> { online, offline, total } +- selectRoomById(id) -> Room? +- selectRoomMetrics(roomId) -> RoomMetrics +- selectRoomReadinessSummary() -> { ready, partial, down, empty } +- selectIssuesByDevice(deviceId) -> List +- selectIssuesBySeverity(severity) -> List +- selectIssueCountBySeverity() -> { critical, warning, info } +- selectHealthScore() -> int (0-100) +- selectSpeedtestsByRoom(roomId) -> List +- selectImagesByDevice(deviceId) -> List + +2.4 Health Score Calculation +``` +healthScore = baseScore - deductions +baseScore = (onlineDevices / totalDevices) * 100 +deductions = (criticalIssues * 5) + (warningIssues * 2) + (infoIssues * 1) +clamp(healthScore, 0, 100) +``` + +2.5 Persistence Layer +- Serialize state to SQLite/Drift on updates (debounced 500ms) +- Load from disk on cold start +- Clear on logout +- Support offline browsing from cached state + +================================================================================ +3) VIEW MAPPING (from OldAppReport.txt) +================================================================================ + +3.1 MainViewUnified (main_view.dart) +Purpose: Root shell with bottom navigation + +Implementation: +- LiveNavBar with 5 tabs: Home, Settings, Scanner, Devices, Rooms, Issues, +- Scanner accessible via FAB or nav item +- On mount: Connect WebSocket (ActionCable) with API key -> subscribe to needed resources -> run initial index loads +- Initialization overlay with progress messages: + 1. "Connecting to server..." + 2. "Authorizing..." + 3. "Loading devices..." + 4. "Loading rooms..." + 5. "Loading issues..." + 6. "Ready" +- Bind to connection.status for connectivity indicator +- Re-run initial index loads on reconnect after disconnect + +3.2 OnboardingView (onboarding_view.dart) +Purpose: First-time user welcome + +Implementation: +- 2-page PageView carousel with dots indicator +- Page 1: Welcome hero image, heading, description, Continue button +- Page 2: rXg setup instructions with animated GIF, "Connect to rXg" button +- On complete: Navigate to auth/scanner screen +- Store onboarding_completed flag in SharedPreferences + +3.3 AuthScreen / CredentialEntryView +Purpose: Login via QR scan or manual entry + +Implementation: +- Tab or toggle: QR Scan | Manual Entry +- QR Scan: Use camera to scan rXg-generated QR containing { fqdn, login, api_key } +- Manual Entry: + - Form fields: FQDN, Login, API Key + - JSON input toggle: paste { "fqdn": "...", "login": "...", "api_key": "..." } +- On submit: Connect ActionCable with API key in Authorization header (or `?api_key=` param) +- Handle connection failure: show message, remain on auth screen +- Validate before submit: non-empty fields, valid FQDN format + +3.4 BarcodeScanner (scanner_screen.dart) +Purpose: Device provisioning and lookup + +Implementation: +- Modes: Credential QR | Device Registration | Device/Room Lookup +- Mode selector at top of screen + +Device Registration Flow: +1. Scan device barcode (MAC or Serial Number) +2. Show registration bottom sheet modal +3. Room selection: Searchable list from rooms store +4. Device assignment options: + a. "Create New Device" - provision new device record + b. "Assign to Designed Device" - select from unassigned devices in room +5. Send a resource_action extra action based on device type: + - AP: resource_type = access_points, crud_action = register_ap_device + - ONT: resource_type = media_converters, crud_action = register_ont_device + - Switch: create_resource or update_resource on switch_devices (no register action) + - params: room_id/pms_room_id, mac, serial_number, existing_device_id (if assigning) +6. Handle resource_response/error: success -> show confirmation, navigate to device +7. Mismatch detection: Compare scanned data with expected values + +Device/Room Lookup Flow: +1. Scan device barcode or room plaque QR +2. Query store for matching device/room +3. Navigate directly to DeviceDetail or RoomDetail + +3.5 HomeView (home_screen.dart) +Purpose: Dashboard overview + +Implementation: +- Property Name Card: from pms_properties (or account metadata) in store +- Health Score Gauge: selectHealthScore() - circular progress 0-100 +- Quick Stats Panel: + - Total devices: devices.length + - Online %: (online / total) * 100 + - Last refresh: connection.lastHeartbeat formatted +- Room Readiness Card: selectRoomReadinessSummary() -> Ready/Not Ready counts +- Issue Breakdown: selectIssueCountBySeverity() -> Critical/Warning/Info badges +- Devices Overview: selectDeviceCountByType() for Switch/AP/ONT +- Speed Test Card: Button to navigate to speed test screen or run test +- Pull-to-refresh: Re-run index loads for devices/rooms/issues + +3.6 ConnectionView (connection_view.dart -> part of Settings) +Purpose: Connection status and session management + +Implementation: +- Connection Status Section: + - Internet: derived from connection.status != disconnected + - Server: connection.status in [authorizing, ready, degraded] + - Auth: credentials.isAuthenticated + - Color indicators: green/yellow/red +- Performance Metrics: + - Latency: connection.latencyMs + "ms" + - Quality: excellent (<100ms), good (<300ms), fair (<500ms), poor (>500ms) +- Data Sync Status: + - Last sync: formatted timestamp + - Next refresh: countdown or "Continuous (WebSocket)" + - Background status: "Connected" or "Reconnecting..." +- User Profile: + - FQDN: credentials.fqdn + - Login: credentials.username +- Actions: + - Manual Sync: Re-run initial index loads + - Disconnect: Close socket, clear credentials, navigate to auth +- Technical Details (collapsible): + - App version, WebSocket URL, raw connection state, error details + +3.7 DevicesView (devices_screen.dart) +Purpose: Device list with search/filter + +Implementation: +- Device List: ListView.builder from selectDevicesByType(filter) +- Device Card: + - Icon by device type (Switch/AP/ONT) + - Name, IP, MAC + - Online/Offline status indicator + - Issue count badge (red for critical) +- Search Bar: Filter by name, MAC, serial number (debounced 300ms) +- Filter Buttons: All | Switch | AP | ONT +- Phase Filter: Optional toggle for deployment phase (if applicable) +- Swipe to Delete: + - Show confirmation dialog + - Send destroy_resource (resource_type = devices, id = device.id) + - Optimistic removal from UI + - Rollback on error with toast +- Pull-to-refresh: Re-run index load for devices +- Tap: Navigate to DeviceDetailView with device.id + +3.8 IssuesView (issues_screen.dart -> notifications_screen.dart) +Purpose: Centralized issue list + +Implementation: +- Issue List: From health_notices (selectIssuesBySeverity()) sorted by severity then time +- Issue Card: + - Severity indicator (icon + color): critical/warning/info + - Title and description + - Device name and room (if applicable) + - Suggested resolution (from issue.resolution field) + - Time since detected +- Search: Filter by text in title/description/device name +- Filter Buttons: All | Critical | Warning | Info +- Device Type Filter: All | AP | ONT | Switch +- Sorting: Critical first, then warning, then info; within severity by time +- Tap: Navigate to DeviceDetailView for associated device + +3.9 RoomReadinessView (rooms_screen.dart) +Purpose: Room status overview + +Implementation: +- Room List/Grid: Responsive layout based on screen width +- Room Card: + - Room name + - Status indicator: Ready (green) | Partial (orange) | Down (red) | Empty (gray) + - Device counts: "3/5 online" + - Issue count badges by severity +- Search: Filter by room name +- Status Filter: All | Ready | Partial | Down +- Phase Filter: Optional deployment phase filter +- Tap: Navigate to RoomDetailView with room.id +- Pull-to-refresh: Re-run index load for rooms + +3.10 RoomDetailView (room_detail_screen.dart) +Purpose: Single room deep dive + +Implementation: +- Room Summary Header: + - Room name + - Status indicator + - Device counts: "Online: 3 | Offline: 2 | Total: 5" + - Total issue count +- Device List: selectDevicesByRoom(roomId) + - Device cards showing: + - Type icon, name, model + - Online/offline status + - Onboarding progress bar (if in progress) + - Issue count badge + - Tap: Navigate to DeviceDetailView +- Issues Accordion: Collapsible sections by severity + - Critical issues expanded by default + - Each issue shows title, description, resolution +- Speed Test Section: + - List of recent speed tests from selectSpeedtestsByRoom(roomId) + - Run Speed Test button -> create_resource on speed_test_results (client-run test) +- Auto-refresh: Subscribe to resource types (rooms, access_points, media_converters) and filter by roomId + +3.11 DeviceDetailView (device_detail_screen.dart) +Purpose: Comprehensive device information + +Implementation: +- 4-Tab Layout: Overview | Ports | Images | Advanced + +Overview Tab: +- Device Info Table: + - Name, Type, Model, Firmware + - IP Address (with copy button) + - MAC Address (with copy button) + - Serial Number (with copy button) + - Uptime, Last Seen + - Room assignment +- Status Card: Online/Offline with duration +- Onboarding Progress: If not complete, show stage progress bar with description +- Issues Section: List of issues for this device +- Notes Section: + - Display current note + - Edit button -> NoteEditView + - Clear button with confirmation + +Device-Specific Sections: +- For AP: + - LED Control Card: Buttons for Blink | On | Off + - LED Reference Guide: Expandable guide showing LED patterns and meanings + - Wireless Info: SSID, Channel, Signal strength, Connected clients + - Speed Test Results: List with download/upload/latency +- For ONT: + - Optical Data Card: TX/RX power, wavelength + - PHY Data Card: Link status, speed, errors + - Port Info: Port status list +- For Switch: + - Port List: Table of all ports with status, speed, connected device + +Ports Tab: +- Port list with detailed info +- Locked ports indicator +- Connected device links + +Images Tab: +- Image Gallery: Grid of thumbnails +- Tap to open interactive viewer (zoom, pan) +- Add Image: Camera/Gallery picker + - Downsample to max 2000x2000, 90% quality + - Warn if >5MB + - Send update_resource with params.images (resource_type = access_points or media_converters) +- Delete Image: Swipe or long-press with confirmation +- Image metadata: Upload time, uploaded by + +Advanced Tab: +- Raw JSON data expandable +- Uplink details +- Sync statistics +- Debug information + +Auto-refresh: 5-second interval timer OR subscribe to resource types and filter by device.id + +3.12 NoteEditView (note_edit_view.dart) +Purpose: Edit device notes + +Implementation: +- TextField: Multi-line, max 255 characters +- Character counter: "45/255" +- Save Button: Send update_resource (resource_type = devices, params.note), handle result +- Cancel Button: Discard changes, pop navigation +- Offline support: Queue command if disconnected, show "Queued" indicator + +================================================================================ +4) DEVICE ONBOARDING STAGES +================================================================================ + +4.1 Access Point (AP) - 6 Stages +| Stage | Title | Description | +|-------|------------------------------------|------------------------------------------------| +| 1 | Awaiting MAC address registration | AP powered, rXg not detected yet | +| 2 | AP reachable, awaiting import | AP has IP, pingable, import not complete | +| 3 | Onboarding import running | rXg importing AP, PKI cert generation | +| 4 | Registered, not approved | Onboarded but awaits manual approval | +| 5 | Registered/approved, offline | Complete onboarding but currently unreachable | +| 6 | Registered, approved, online | SUCCESS - Fully operational | + +4.2 ONT (Optical Network Terminal) - 5 Stages +| Stage | Title | Description | +|-------|------------------------------------|------------------------------------------------| +| 1 | ONT not registered with OLT | Scanned but never seen by OLT | +| 2 | Seen by OLT, awaiting registration | Visible to OLT, not registered (may update FW) | +| 3 | Registered, awaiting provisioning | Registered but ports not provisioned | +| 4 | ONT offline, fully provisioned | Provisioning complete but not reachable | +| 5 | ONT online, fully provisioned | SUCCESS - Fully operational | + +4.3 Onboarding UI Components +- Progress Bar: Shows current stage / total stages +- Stage Title: Bold text with current stage name +- Stage Description: Gray text explaining what's happening +- Elapsed Time: "In this stage for 5m 32s" +- Overdue Indicator: Warning badge if >6 minutes in non-success stage + +================================================================================ +5) SERIAL NUMBER VALIDATIONS +================================================================================ + +5.1 Device Type Detection by Serial Prefix +- AP (Access Point): Must start with "1K9", "1M3", or "1HN" +- ONT (Media Converter): Must start with "ALCL" +- Switch: Must start with "LL" + +5.2 Barcode Formats Supported +- QR Code: For credentials and device lookup +- Code128: For device serial numbers + +5.3 Scan Accumulation Window +- 6-second window for multi-barcode scanning (ONT/AP may have multiple labels) +- Auto-merge scans within window +- Auto-revert to default mode after 8 seconds of no serial + +================================================================================ +6) DEVICE REGISTRATION WORKFLOW +================================================================================ + +6.1 Unassigned/Designed Device Concept +- "Designed Device": Pre-created device record in rXg without hardware assigned +- "Unassigned Device": Device with placeholder MAC/Serial (empty, 'null', 'placeholder') +- Field technician assigns physical hardware to designed device + +6.2 Registration Bottom Sheet Flow +1. Scan barcode -> Detect device type from serial prefix +2. Show bottom sheet modal: + - Header: "Register [AP/ONT/Switch]" + - Scanned data: MAC and/or Serial Number +3. Room Selection: + - Searchable dropdown from rooms store + - Required before proceeding +4. Device Assignment Options: + a. "Create New Device" button + b. "Assign to Existing" dropdown (shows unassigned devices in selected room) +5. Mismatch Detection: + - If scanned data differs from selected device, show comparison: + | Field | Expected | Scanned | + |----------|-----------|-----------| + | MAC | AA:BB:... | CC:DD:... | + - User must confirm to proceed +6. Hold-to-Confirm Button: + - Circular progress button + - User must hold for 2 seconds to submit + - Prevents accidental registration +7. Result: + - Success: Toast + navigate to device detail + - Error: Error message + stay on scanner + +================================================================================ +7) UI PATTERNS & COMPONENTS +================================================================================ + +7.1 Navigation Shell Structure +LiveNavBar (Bottom Navigation): +- Home (Dashboard icon) +- Devices (Device icon) +- [Scanner FAB - floating action button in center] +- Issues (Alert icon with badge) +- Rooms (Grid icon) +- Settings (Gear icon, contains Connection status) + +Alternative: Scanner as 6th nav item instead of FAB + +7.2 Copy-to-Clipboard Pattern +- Icon button next to copyable fields (IP, MAC, Serial) +- On tap: Copy to clipboard + show toast "Copied to clipboard" +- Haptic feedback on copy + +7.3 Skeleton Loading Screens +- Device list: 5 skeleton cards with shimmer +- Device detail: Skeleton for each section +- Room list: 6 skeleton cards +- Use shimmer animation during initial load only + +7.4 Toast/Snackbar Patterns +- Success (green): "Device registered successfully" +- Error (red): "Failed to save note: [error message]" +- Warning (orange): "Connection unstable" +- Info (blue): "3 commands queued for sync" +- Duration: 3 seconds, dismissible + +7.5 Pull-to-Refresh +- All list views support pull-to-refresh +- Triggers index resource_action for the relevant resource types +- Show refresh indicator at top + +7.6 Filter State Persistence +- Store active filters in Riverpod state +- Persist across navigation (not cleared on pop) +- Reset button to clear all filters + +7.7 Search Debouncing +- Debounce: 300ms +- Minimum characters: 2 (or show all if empty) +- Search icon with clear button when text present + +================================================================================ +8) LED REFERENCE GUIDE (AP Only) +================================================================================ + +8.1 LED Patterns +| Pattern | Meaning | +|----------------|--------------------------------------| +| Solid Green | Online, operating normally | +| Blinking Green | Booting or firmware update | +| Solid Orange | Degraded or warning state | +| Blinking Orange| Attempting to connect | +| Solid Red | Error or offline | +| Blinking Red | Critical error | +| Off | No power or disabled | + +8.2 LED Control Commands +- Blink: Rapid blink for 30 seconds (identification) +- On: Solid LED on +- Off: LED disabled + +8.3 UI Implementation +- Card with three buttons: Blink | On | Off +- "LED Reference" expandable accordion below +- Loading indicator on button while command pending + +================================================================================ +9) SPEED TEST MODEL +================================================================================ + +9.1 SpeedTestResult Fields +``` +SpeedTestResult { + id: string, + roomId: string, + deviceId: string?, // AP that ran the test + status: pending|running|completed|failed, + downloadMbps: double?, + uploadMbps: double?, + latencyMs: double?, + jitterMs: double?, + packetLossPercent: double?, + passed: bool?, // Met threshold + threshold: { + minDownload: double, + minUpload: double, + maxLatency: double + }, + initiatedAt: DateTime, + completedAt: DateTime?, + error: string? +} +``` + +9.2 Speed Test UI +- Results Card: Download/Upload with pass/fail indicators +- Latency & Jitter displayed if available +- "Run Test" button with loading state +- History list sorted by most recent + +================================================================================ +10) IMAGE MANAGEMENT +================================================================================ + +10.1 Image Model +``` +DeviceImage { + id: string, + deviceId: string, + url: string, + thumbnailUrl: string?, + filename: string, + sizeBytes: int, + uploadedAt: DateTime, + uploadedBy: string?, + metadata: {} +} +``` + +10.2 Image Upload Flow +1. Tap "Add Image" button +2. Show picker: Camera | Gallery +3. Select/capture image +4. Client-side processing: + - Downsample to max 2000x2000 + - JPEG quality 90% + - Warn if >5MB after processing +5. Show upload progress indicator +6. Send update_resource with params.images (resource_type = access_points or media_converters) +7. On success: Add to images list +8. On error: Show retry option + +10.3 Image Viewer +- Full-screen modal +- Pinch-to-zoom +- Pan/drag when zoomed +- Swipe left/right for next/previous +- Close button (X) in corner +- Image counter: "2 of 5" + +================================================================================ +11) COMMAND QUEUE & OFFLINE BEHAVIOR +================================================================================ + +11.1 Queue Structure +``` +QueuedCommand { + id: uuid, + type: string, + payload: {}, + createdAt: DateTime, + retryCount: int, + status: pending|sending|failed +} +``` + +11.2 Queue Behavior +- Commands queued when connection.status != ready +- Persist queue to disk (SQLite or SharedPreferences) +- On reconnect: Flush queue in order, with retry logic +- Max retries: 3 per command +- Show queue status in UI (pending count badge) + +11.3 Conflict Resolution +- No explicit version conflict codes are provided; handle 404/422 by rolling back optimistic UI changes +- On error: Show error toast and request a fresh record via resource_action show + +11.4 Optimistic Updates +- Apply change to local store immediately +- Show pending indicator on affected item +- On success: Remove pending indicator +- On error: Rollback change, show error + +================================================================================ +12) DEVICE-SPECIFIC DATA MODELS +================================================================================ + +12.1 ONT Optical/PHY Data +``` +OntOpticsData { + deviceId: string, + txPowerDbm: double?, // Transmit power + rxPowerDbm: double?, // Receive power + wavelengthNm: double?, // Wavelength in nanometers + temperature: double?, // Module temperature + voltage: double?, // Supply voltage + laserBiasCurrent: double?, // Laser bias current + updatedAt: DateTime +} + +OntPhyData { + deviceId: string, + linkStatus: up|down, + speed: string, // "1Gbps", "10Gbps" + duplex: full|half, + mtu: int, + rxErrors: int, + txErrors: int, + rxDropped: int, + txDropped: int, + updatedAt: DateTime +} +``` + +12.2 Switch Port Data +``` +SwitchPort { + id: string, + portNumber: int, + name: string?, + status: up|down|disabled, + speed: string?, // "1Gbps", "100Mbps" + duplex: full|half|auto, + vlan: int?, + poeEnabled: bool?, + poeStatus: string?, + connectedDevice: { + type: ap|ont|unknown, + id: string?, + name: string?, + mac: string? + }?, + trafficStats: { + rxBytes: int, + txBytes: int, + rxPackets: int, + txPackets: int + }?, + lastStateChange: DateTime? +} +``` + +12.3 Issue Model +``` +Issue { + id: string, + deviceId: string, + roomId: string?, + type: offline|config_error|performance|compliance|documentation, + severity: critical|warning|info, + title: string, + description: string, + resolution: string?, // Suggested fix + detectedAt: DateTime, + resolvedAt: DateTime?, + metadata: {} +} +``` +Note: Map health_notices fields into this shape (severity/title/description/resolution). + +================================================================================ +13) DEEPLINK SUPPORT +================================================================================ + +13.1 Deeplink URL Scheme +- Scheme: fdk:// or attfetool:// +- Login: fdk://login?fqdn=...&apiKey=...&login=... +- Also supports: fdk://login?data={base64_json} + +13.2 Deeplink Handling Flow +1. App receives deeplink intent +2. Parse URL parameters or decode base64 data +3. Validate: FQDN format, API key length (min 32 chars) +4. Show confirmation dialog with server info +5. On confirm: Connect ActionCable with API key (Authorization header or api_key param) +6. On success: Navigate to MainView +7. On error: Show error, stay on auth screen + +13.3 Deduplication +- Track last processed URI + timestamp +- Ignore same URI within 30 seconds +- Prevents double-processing on app resume + +================================================================================ +14) PHASE FILTER (Deployment Phases) +================================================================================ + +14.1 Phase Concept +- Phases represent deployment stages of a property +- Used for large rollouts where rooms are installed in batches +- Phase values: 1, 2, 3, ... or named phases + +14.2 Phase Assignment +- Rooms assigned to phases during design/planning +- Devices inherit phase from their assigned room +- Phase stored in room.metadata.phase or device.metadata.phase + +14.3 Phase Filter UI +- Dropdown or chip selector: "All Phases" | "Phase 1" | "Phase 2" | ... +- Applied in DevicesView, RoomsView, IssuesView +- Combined with other filters (type, status, search) + +================================================================================ +15) MIGRATION STRATEGY +================================================================================ + +The migration from a REST-based API to a real-time WebSocket architecture will be performed carefully to minimize risk and service disruption. This will be achieved using a feature-flag-controlled, phased rollout. + +15.1 Phase 1: Foundational Setup (Parallel Systems) +- The existing `RxgApiClient` (REST) will remain fully functional. +- The new WebSocket service and data store will be implemented in parallel. +- A central feature flag, `use_websocket_backend`, will be introduced, defaulting to `false`. This flag can be controlled remotely (e.g., via Firebase Remote Config) to enable the new backend for specific users or user groups. +- A new data provider layer will be created with a single function like `getDataProvider()`. This function will return either the REST client or the new WebSocket client based on the feature flag. All UI views will be refactored to use this abstract provider, not a specific client. + +15.2 Phase 2: Canary Release & Validation (Internal Testing) +- The `use_websocket_backend` flag will be enabled for internal testers and a small percentage of users (e.g., 1-5%). +- **Shadowing:** For this group, the app will *run both data providers*. It will use the WebSocket data to populate the UI but will also fetch data from the REST API in the background. +- **Validation & Logging:** The app will compare the data received from both sources. Any discrepancies, latency differences, or errors will be logged to a remote monitoring service for analysis. This allows us to validate the new backend against the old one in a real-world environment without impacting the user's experience (as they only see the WebSocket data). +- The focus is on achieving data parity and identifying any missed edge cases in the WebSocket implementation. + +15.3 Phase 3: Phased Rollout (Incremental User Exposure) +- Once the canary group shows stable results with no significant data discrepancies, the shadowing can be disabled for that group. +- The user base for the `use_websocket_backend=true` flag will be incrementally increased (e.g., 10% -> 25% -> 50% -> 100%) over a period of several days or weeks. +- Key performance indicators (KPIs) such as crash rates, API error rates (for the old client), command failure rates (for the new client), and perceived app performance will be monitored closely during this period. +- Any new issues will trigger a rollback of the flag to a smaller user percentage until the issues are resolved. + +15.4 Phase 4: Deprecation & Cleanup +- Once the WebSocket backend is fully rolled out to 100% of users and has been stable for a designated period (e.g., one full release cycle), the old code can be removed. +- The `RxgApiClient` and all related REST-specific logic will be deleted from the codebase. +- The feature flag and the abstraction layer can be removed, and the UI can directly reference the WebSocket data provider. + +This strategy ensures a safe, reversible, and data-driven migration, building confidence at each stage before full commitment. + +================================================================================ +16) ACCEPTANCE CRITERIA +================================================================================ + +Functional: +- [ ] All 10 views from OldAppReport.txt implemented +- [ ] Live updates reflected without manual refresh +- [ ] Scanner registration works online and queues offline +- [ ] Device details (images, notes, LED, speed tests) update via socket +- [ ] App works after restart using cached data +- [ ] Health score calculated correctly +- [ ] Room readiness status accurate +- [ ] Issue aggregation and filtering works + +Performance: +- [ ] Initial load <3 seconds on cached data +- [ ] WebSocket latency <100ms for updates +- [ ] Smooth scrolling on device lists (60fps) +- [ ] Image gallery loads progressively + +Reliability: +- [ ] Graceful reconnection on network changes +- [ ] Offline commands queued and synced +- [ ] No data loss on app backgrounding +- [ ] Crash recovery maintains state + +================================================================================ +17) ERROR HANDLING STRATEGY +================================================================================ + +A robust error handling strategy is critical for application stability and user trust. Errors arrive as `action: "error"` with `status` and an `error` string. + +17.1 Error Code Taxonomy & Client Response + +| Status | Category | Meaning | Client-Side Action | +|--------|-----------------|----------------------------------------------------|---------------------------------------------------------------------------------| +| 401/403| Authentication | API key invalid or permission denied | Show "Permission denied", keep user on auth screen or logout. | +| 404 | Validation | Requested entity not found | Roll back optimistic UI changes; show "Not found". | +| 422 | Validation | Invalid input / failed validations | Show field-level errors if possible; otherwise show toast. | +| 500 | Server | Internal server error | Show generic error; log to crash reporting. | + +17.2 UI for Errors +- **Toasts/Snackbars:** For non-critical, transient errors (e.g., validation failure, permission denied). +- **Dialogs:** For critical errors that require user action (e.g., authentication failure). +- **Inline Errors:** For validation errors, displayed directly on the form fields. +- **Logging:** All but the most common validation errors should be logged to a remote service (Sentry, etc.) for analysis. + +================================================================================ +18) TESTING PLAN +================================================================================ + +The testing strategy is divided into four layers to ensure comprehensive coverage. + +18.1 Unit Tests +- **Reducers:** Test all state transitions. Example: "Given an existing device, a `resource_response` with `resource_action: updated` should replace the record." +- **Selectors:** Verify derived data computation. Example: "Given 10 devices (5 online) and 2 critical issues, `selectHealthScore` must return `(5/10 * 100) - (2 * 5) = 40`." +- **Message Parsing:** Ensure the client can correctly parse all valid message types and gracefully handle malformed messages. +- **Queue Persistence:** Test saving the command queue to disk, loading it on startup, and clearing it on logout. + +18.2 Widget Tests +- **View Rendering:** Test that each view/screen correctly renders its state from a mock data store (e.g., a `DeviceDetailView` shows all information for a mock `Device` object). +- **Filter/Search:** Verify that applying a filter on the `DevicesView` correctly updates the list of visible devices. +- **Error States:** Test that views correctly display error messages (e.g., an inline error on a form field). +- **Pull-to-Refresh:** Verify that the pull-to-refresh action on a list view triggers an index `resource_action`. + +18.3 Integration Tests +- **Full Connection Lifecycle:** Test the entire state machine: connect -> authorize -> load initial index data -> receive broadcasts -> disconnect -> reconnect. +- **Offline Command Queue:** Go offline, queue multiple commands (e.g., update note, delete device), go back online, and verify the commands are sent in order and the UI updates correctly on success or failure. +- **Initial Load/Broadcast Race Condition:** Send `resource_response` broadcasts during index loads and ensure queued updates apply after initial data. +- **Conflict Resolution:** Force 404/422 errors and verify the client rolls back and refreshes the entity. + +18.4 End-to-End (E2E) Tests (Critical User Journeys) +Automated using Flutter's `integration_test` package. + +- **Journey 1: First-Time Login & Data Validation** + 1. App starts, user is on `OnboardingView`. + 2. User completes onboarding, lands on `AuthScreen`. + 3. User scans a valid QR code. + 4. App shows loading indicators for "Connecting", "Authorizing", "Loading...". + 5. App navigates to `HomeView`. + 6. **Assert:** The property name is correct and the health score is a valid number between 0 and 100. + +- **Journey 2: Offline Device Registration & Sync** + 1. User logs in and is online. + 2. User disables network connectivity. + 3. User navigates to the scanner. + 4. User scans a new device barcode. + 5. User selects a room and fills out the registration form. + 6. User submits the registration. + 7. **Assert:** A "Command Queued" indicator is visible. + 8. User re-enables network connectivity. + 9. **Assert:** The queued indicator disappears, and a "Success" toast appears. The new device is now present in the `DevicesView`. + +- **Journey 3: Real-time Update Verification** + 1. Log in on two separate devices/emulators (Client A, Client B). + 2. On Client A, navigate to a specific device's detail view. + 3. On Client A, edit the technician note for that device and save. + 4. **Assert:** On Client B, the same device's detail view updates with the new note within 2 seconds without any user interaction. + +- **Journey 4: LED Control & Device Interaction** + 1. User navigates to an Access Point's `DeviceDetailView`. + 2. User taps the "Blink" LED button. + 3. **Assert:** A `resource_action` (resource_type = access_points, crud_action = led) is sent, and a pending indicator is shown. + 4. After the server sends `resource_response`, the pending indicator disappears. + +================================================================================ +19) PROTOCOL AGREEMENTS & ASSUMPTIONS +================================================================================ + +To eliminate ambiguity, the following specifications are assumed to be the agreed-upon contract between the client and backend teams. + +1. **WebSocket Endpoint:** The client will connect to ActionCable at `wss://{fqdn}/cable` (or `CABLE_URL` if configured). +2. **Pagination:** Index responses provide `count`, `page`, `page_size`, `total_pages`; the client requests all pages sequentially as described in section 1.4. +3. **Property Name:** Property/account metadata is retrieved via standard resource index/show (e.g., `account` or `pms_properties`), not a special snapshot. +4. **LED Control:** The LED action is `access_points` extra member action `led` (POST) via `resource_action`. +5. **Speed Tests:** Speed tests are stored in `speed_tests`/`speed_test_results` resources; the client creates results and listens for broadcasts if subscribed. +6. **Image Uploads:** Images are uploaded via `update_resource` with `params.images` on `access_points` or `media_converters`. +7. **Offline Command Handling:** The client sends queued CRUD/extra actions in order; failures are handled per status code. +8. **Resource Types:** Rooms are `pms_rooms`, issues are `health_notices`, devices are `access_points`/`media_converters`/`switch_devices`. + +================================================================================ +20) RISKS & MITIGATIONS +================================================================================ + +| Risk | Likelihood | Impact | Mitigation | +|------|------------|--------|------------| +| WebSocket protocol mismatch | Low | High | Align with ActionCable protocol and RxgChannel methods; add integration tests. | +| Large initial dataset | Medium | Medium | Use index pagination and staged loading; render incrementally. | +| Image upload failures | Low | Medium | Keep downsampling, add retry with progress, clear error messages. | +| Connection instability | Medium | High | Robust client-side reconnect logic, degraded state UI, offline command queue. | +| State sync issues | Medium | High | Queue broadcasts during initial load; apply last-write-wins by `updated_at`. | +| Cold start performance | Low | Medium | Lazy loading of views, skeleton screens, and persisting data store to disk. | + +================================================================================ +21) DOCUMENT SUMMARY +================================================================================ + +This plan covers 21 major sections. The key additions that have brought this plan to its final, actionable state are: +- A clear ActionCable authentication lifecycle aligned to API key/session auth (Section 1.1). +- A race-condition-proof model for loading initial data (Section 1.4). +- A detailed error handling taxonomy and client strategy (Section 17). +- A comprehensive, multi-layered testing plan with concrete E2E user journeys (Section 18). +- A safe, feature-flag-driven migration strategy allowing for a canary release (Section 15). +- A clear set of protocol agreements, removing ambiguity between client and server development (Section 19). + +All 10 views from OldAppReport.txt are mapped, all device types are modeled, and all user interactions are specified. The plan is complete and actionable. + +================================================================================ +END OF PLAN +================================================================================ diff --git a/OldAppReport.txt b/OldAppReport.txt index 2242015..8146c08 100644 --- a/OldAppReport.txt +++ b/OldAppReport.txt @@ -1,68 +1,164 @@ -Old App Functionality Report (Iteration 1) -App: ATT-FE-Tool -Scope: View-level functionality summary for rebuild planning - -MainViewUnified -- App shell with PageView tabs and bottom nav. -- Initialization flow (connection check, credential check, data load) with overlay. -- Connectivity monitoring and background refresh start. -- Routes to scanner when credentials missing or invalid. - -HomeView -- Dashboard summary with property name, health score, and quick stats. -- Device online/offline counts by type. -- Room readiness summary and issue breakdown. -- Speed test card and pull-to-refresh. - -ConnectionView -- Connection overview and core services status. -- Manual sync and disconnect actions. -- Profile details (FQDN/login), app version, endpoint. -- Data sync timing and notification messages. - -BarcodeScannerUnified -- Camera-based QR/Code128 scanning. -- Mode selection for rXg credentials or device registration. -- Room selection and unassigned device selection. -- Registration/move flow with confirmation and mismatch handling. -- Camera controls (flip, flash, zoom) and permission handling. - -DevicesView -- Search and filter by device type. -- Device cards with online status and issue count badges. -- Swipe-to-delete with confirmation and queued delete on offline. -- Navigate to device detail. - -IssuesView -- Aggregated issues across devices. -- Filters by device type and severity, plus search. -- Issue cards with device/room context; navigate to device detail. - -RoomReadinessView -- List of rooms with readiness status and issue counts. -- Search and status filters; responsive list/grid. -- Navigate to room detail. - -RoomDetailView -- Room summary with device counts and issues. -- Issues accordion and speed test selector. -- Device tables for ONTs/APs; navigate to device detail. -- Auto refresh with progress indicator. - -DeviceDetailView -- Unified summary with status and issues. -- Device details, ports/optics, and per-type sections. -- Images viewer/upload and notes editing. -- Speed test widgets and advanced info section. -- Auto refresh and manual refresh. - -CredentialEntryView -- Manual or JSON credential entry with validation. -- Error handling and cancel back to scanner. - -NoteEditView -- Edit and save device note with offline queue support. - -OnboardingView -- Two-page onboarding with welcome and rXg setup guide. -- Continue to scanner in main view. +# ATT-FE-Tool Functionality Report (Version 2) + +This report breaks down the functionality of the ATT-FE-Tool application, organized by its views. + +## Core Application Structure (`main_view.dart`) + +- **Role:** Main container for the application's primary views post-authentication. +- **Navigation:** Manages a `LiveNavBar` to switch between `HomeView`, `ConnectionView`, `DevicesView`, `IssuesView`, and `RoomReadinessView`. The `BarcodeScanner` is also accessed from here for device provisioning. +- **Initialization:** After a successful login, this view orchestrates the application startup sequence. + - Shows an initialization overlay with progress messages. + - Fetches all initial data from the rXg via `RxgApiClient.getAllRxgData()`, populating device, room, and issue information. +- **State Management:** Handles global application state, including network connectivity. It can re-trigger data synchronization if the network connection is restored. + +--- + +## 1. Authentication and Onboarding + +The application offers two primary methods for authentication, preceded by a one-time onboarding experience for new users. + +### 1a. Onboarding (`onboarding_view.dart`) + +- **Role:** First-time user experience. +- **Functionality:** + - A two-page carousel that welcomes the user. + - Provides a high-level explanation of how to connect the app to an rXg instance, including an animated GIF. + - Navigates the user to the `ConnectionView` where they can choose a login method. + +### 1b. Barcode Scanner (for Login) (`barcode_scanner.dart`) + +- **Role:** The primary and recommended method for authentication. +- **Functionality:** + - Uses the device's camera to scan a QR code generated within the rXg web interface. + - The QR code contains the FQDN, username, and API key. + - Upon a successful scan, the credentials are automatically and securely stored, and the user is navigated to the `MainViewUnified`. + +### 1c. Manual Credential Entry (`credential_entry_view.dart`) + +- **Role:** An alternative, manual method for authentication. +- **Functionality:** + - Provides two methods for credential input: + 1. **Manual Form:** Separate fields for FQDN, Login, and API Key. + 2. **JSON Input:** A single text area to paste a JSON object containing the credentials. + - **Validation:** Uses a `ScannerValidationService` to validate the entered credentials against the rXg. + - **Navigation:** On successful validation, it saves the credentials and navigates the user to the main application. On failure, it displays an error message. + +--- + +## 2. Barcode Scanner (for Device Provisioning) (`barcode_scanner.dart`) + +- **Role:** After login, the scanner's purpose shifts to become the primary tool for registering new hardware in the field. This is a critical workflow. +- **Functionality:** + - **Hardware Scan:** The user scans the hardware barcode (MAC address or Serial Number) of a new device (AP, ONT, or Switch). + - **Registration Bottom Sheet:** Upon a successful scan, a modal bottom sheet appears, guiding the technician through the registration process. + - **Room Selection:** The user must select the room where the device is being installed. + - **Device Assignment:** The user can then either: + 1. **Create a New Device:** Provision a completely new device record in the rXg. + 2. **Assign to Designed Device:** Link the scanned hardware to a pre-existing "designed" (or planned) device entry in the rXg. + - **API Call:** The view calls the appropriate registration method in `RxgApiClient` (`registerAP`, `registerONT`, etc.) to complete the process. +- **Use Case (Device/Room Lookup):** The scanner can also be used to scan a barcode on an already-installed device or a room plaque to be taken directly to that item's detail view in the app. + +--- + +## 3. Home / Dashboard (`home_view.dart`) + +- **Role:** A high-level dashboard providing a "single pane of glass" overview of the system's health. +- **Functionality:** + - **Property Name:** Displays the name of the property being monitored. + - **Health Score:** A prominent gauge that displays an overall system health score. + - **Quick Stats:** A summary of total devices, online percentage, and last data refresh time. + - **Room Readiness Overview:** A card summarizing "Ready" and "Not Ready" rooms. + - **Issue Breakdown:** Shows a count of all issues, broken down by severity (Critical, Warning, Info). + - **Devices Overview:** Shows online and offline counts for each device type (Switches, APs, ONTs). + - **Speed Test Card:** A card for running `iperf3` speed tests. + +--- + +## 4. Connection Status (`connection_view.dart`) + +- **Role:** A detailed dashboard for monitoring the connection to the rXg and managing the user session. +- **Functionality:** + - **Connection Status:** Detailed breakdown of Internet, Server reachability, and Authentication status. + - **Performance Metrics:** Displays connection quality and API latency. + - **Data Sync Status:** Shows the time of the last and next data synchronization. + - **User Profile:** Displays the FQDN and Login for the current user. + - **Actions:** + - **Manual Sync:** A button to force a full refresh of all data from the rXg. + - **Disconnect:** A button to log out, which securely clears all credentials and cached data, returning the user to the login screen. + - **Technical Details:** App version, API endpoint, and raw error messages for debugging. + +--- + +## 5. Devices List (`devices_view.dart`) + +- **Role:** The primary screen for finding and navigating to specific devices. +- **Functionality:** + - **Device List:** Displays all devices (Switches, APs, ONTs) in a scrollable list. + - **Device Card:** Each card shows the device name, type, online/offline status, and an issue-count badge. + - **Search & Filter:** Search by name/MAC/SN, filter by device type, and a "Phase" filter. + - **Deletion:** Allows users to delete a device by swiping, with a confirmation dialog and offline queuing. + - **Navigation:** Tapping a device navigates to its `DeviceDetailView`. + +--- + +## 6. Issues List (`issues_view.dart`) + +- **Role:** A centralized view to see all detected problems across the entire system. +- **Functionality:** + - **Issue List:** Aggregates and lists all issues from all devices. + - **Issue Card:** Shows severity, title, description, associated device/room, and a suggested resolution. + - **Search & Filter:** Search by text, filter by device type and issue severity. + - **Sorting:** The list is sorted to show the most critical issues first. + - **Navigation:** Tapping an issue navigates to the `DeviceDetailView` for the associated device. + +--- + +## 7. Room Readiness List (`room_readiness_view.dart`) + +- **Role:** Provides a high-level overview of the installation/operational status of all rooms. +- **Functionality:** + - **Room List/Grid:** Displays all rooms in a responsive list or grid. + - **Room Card:** Summarizes room status, device counts (online vs. total), and issue counts. + - **Search & Filter:** Search by room name, filter by readiness status ("Ready", "Partial", "Down") and "Phase". + - **Navigation:** Tapping a room card navigates to the `RoomDetailView`. + +--- + +## 8. Room Detail (`room_detail_view.dart`) + +- **Role:** A detailed dashboard for a single room, showing all its devices and their statuses. +- **Functionality:** + - **Room Summary:** A header card shows the room name, device counts, online status, and total issue count. + - **Device List:** Lists all ONTs and APs within the room, including their onboarding progress. + - **Issue Accordion:** Displays all issues for all devices in the room, grouped by severity. + - **Speed Tests:** A widget to initiate or view speed tests for the room. + - **Navigation:** Tapping a device or issue navigates to the `DeviceDetailView`. + +--- + +## 9. Device Detail (`device_detail_view.dart`) + +- **Role:** A comprehensive, all-in-one view for a single network device. This is the most feature-rich screen. +- **Functionality:** + - **Device Details:** Shows extensive information (IP, MAC, S/N, model, firmware, uptime) with copy-to-clipboard actions. + - **Image Management:** View a gallery, add images from camera/gallery, and view them in an interactive viewer. + - **Technician Notes:** View, add, edit, or clear a note for the device (navigates to `NoteEditView`). + - **Issue Display:** Lists all detected issues specific to this device. + - **Auto-Refresh:** The view auto-refreshes every 5 seconds. + - **Device-Specific Features:** + - **For APs:** Remotely control the device's LED (blink, on, off) for identification. Includes an in-app LED pattern reference guide. + - **For ONTs:** Displays detailed optical/PHY data. + - **For Switches:** Displays a detailed list of all switch ports and their status. + - **Advanced Info:** An expandable section showing raw technical data for debugging. + +--- + +## 10. Note Edit (`note_edit_view.dart`) + +- **Role:** A simple, focused screen for editing a technician note. +- **Functionality:** + - Provides a multi-line text field with a 255-character limit. + - On "Save", it calls the API to update the note. Handles offline queuing. + - "Cancel" discards changes. + +*This report is based on a combined static and architectural analysis of the Flutter application.* \ No newline at end of file diff --git a/lib/core/providers/websocket_providers.dart b/lib/core/providers/websocket_providers.dart index 66c09cb..2cce9a6 100644 --- a/lib/core/providers/websocket_providers.dart +++ b/lib/core/providers/websocket_providers.dart @@ -13,6 +13,7 @@ final webSocketConfigProvider = Provider((ref) { maxReconnectDelay: EnvironmentConfig.webSocketMaxReconnectDelay, heartbeatInterval: EnvironmentConfig.webSocketHeartbeatInterval, heartbeatTimeout: EnvironmentConfig.webSocketHeartbeatTimeout, + sendClientPing: false, ); }); diff --git a/lib/core/services/notification_generation_service.dart b/lib/core/services/notification_generation_service.dart index 33a3864..dd87758 100644 --- a/lib/core/services/notification_generation_service.dart +++ b/lib/core/services/notification_generation_service.dart @@ -10,67 +10,104 @@ class NotificationGenerationService { // Stream controllers for notification events final _notificationController = StreamController.broadcast(); - final _notificationListController = StreamController>.broadcast(); - - Stream get notificationStream => _notificationController.stream; - Stream> get notificationListStream => _notificationListController.stream; - - // Track previous device states to detect changes - final Map _previousDeviceStates = {}; - + final _notificationListController = + StreamController>.broadcast(); + + Stream get notificationStream => + _notificationController.stream; + Stream> get notificationListStream => + _notificationListController.stream; + + // Track previous device states to detect transitions + final Map _previousDeviceStates = {}; + // Store generated notifications locally final List _notifications = []; + + // Retention policy constants + static const int _maxNotifications = 500; + static const Duration _notificationTtl = Duration(hours: 24); /// Generate notifications from device status changes List generateFromDevices(List devices) { final newNotifications = []; final now = DateTime.now(); - + + // Prune old notifications first (retention policy) + _pruneNotifications(now); + for (final device in devices) { - final previousStatus = _previousDeviceStates[device.id]; - final currentStatus = device.status.toLowerCase(); - - // Track status change - _previousDeviceStates[device.id] = currentStatus; - - // Generate notifications based on current device status - final deviceNotifications = _generateDeviceNotifications(device, now, previousStatus); + final previousState = _previousDeviceStates[device.id]; + final currentState = _DeviceState( + isOnline: device.isOnline, + hasNote: device.note != null && device.note!.isNotEmpty, + hasImages: device.images != null && device.images!.isNotEmpty, + ); + + // Generate notifications only on state TRANSITIONS + final deviceNotifications = _generateDeviceNotifications( + device, + now, + previousState, + currentState, + ); newNotifications.addAll(deviceNotifications); + + // Update tracked state + _previousDeviceStates[device.id] = currentState; } - + // Add new notifications to our local store _notifications.addAll(newNotifications); - + // Emit new notifications for (final notification in newNotifications) { _notificationController.add(notification); } - + // Emit updated notification list _notificationListController.add(List.from(_notifications)); - + return newNotifications; } + + /// Prune notifications based on TTL and max count + void _pruneNotifications(DateTime now) { + // Remove notifications older than TTL + _notifications.removeWhere( + (n) => now.difference(n.timestamp) > _notificationTtl, + ); + + // If still over max, remove oldest (already sorted by timestamp) + if (_notifications.length > _maxNotifications) { + // Sort by timestamp descending (newest first) + _notifications.sort((a, b) => b.timestamp.compareTo(a.timestamp)); + // Keep only the newest _maxNotifications + _notifications.removeRange(_maxNotifications, _notifications.length); + } + } - /// Generate notifications for a specific device based on its status - /// Following the rules from docs/notification-system.md exactly: - /// - URGENT (Red): device.online == false - /// - MEDIUM (Orange): device.note != null - /// - LOW (Green): device.images == null or empty - List _generateDeviceNotifications(Device device, DateTime timestamp, String? previousStatus) { + /// Generate notifications for a specific device based on STATE TRANSITIONS + /// Only generates notifications when state changes, not on every refresh. + /// - URGENT (Red): online -> offline transition + /// - MEDIUM (Orange): no note -> has note transition + /// - LOW (Green): has images -> no images transition + List _generateDeviceNotifications( + Device device, + DateTime timestamp, + _DeviceState? previousState, + _DeviceState currentState, + ) { final notifications = []; - - // 1. URGENT priority - Device offline (red) - // Rule: device['online'] == false - if (!device.isOnline) { - // Check if we already have an unread offline notification for this device - final existingOfflineNotification = _notifications.any((n) => - n.type == NotificationType.deviceOffline && - n.deviceId == device.id && - !n.isRead - ); - - if (!existingOfflineNotification) { + + // First time seeing this device? Only notify for problem states + final isFirstSeen = previousState == null; + + // 1. URGENT priority - Device went offline (online -> offline transition) + if (!currentState.isOnline) { + // Only notify if: first time seen offline, OR was online before + final wentOffline = isFirstSeen || previousState.isOnline; + if (wentOffline) { notifications.add(AppNotification( id: 'offline-${device.id}-${timestamp.millisecondsSinceEpoch}', title: 'Device Offline', @@ -90,18 +127,12 @@ class NotificationGenerationService { )); } } - - // 2. MEDIUM priority - Device has notes (orange) - // Rule: device['note'] != null - if (device.note != null && device.note!.isNotEmpty) { - final existingNoteNotification = _notifications.any((n) => - n.type == NotificationType.deviceNote && - n.deviceId == device.id && - !n.isRead - ); - - // Only generate if we don't already have an unread note notification for this device - if (!existingNoteNotification) { + + // 2. MEDIUM priority - Device has new note (no note -> has note transition) + if (currentState.hasNote) { + // Only notify if: first time seen with note, OR didn't have note before + final noteAppeared = isFirstSeen || !previousState.hasNote; + if (noteAppeared) { notifications.add(AppNotification( id: 'note-${device.id}-${timestamp.millisecondsSinceEpoch}', title: 'Device Has Note', @@ -121,18 +152,12 @@ class NotificationGenerationService { )); } } - - // 3. LOW priority - Missing images (green) - // Rule: device['images'] == null or empty - if (device.images == null || device.images!.isEmpty) { - final existingImageNotification = _notifications.any((n) => - n.type == NotificationType.missingImage && - n.deviceId == device.id && - !n.isRead - ); - - // Only generate if we don't already have an unread image notification for this device - if (!existingImageNotification) { + + // 3. LOW priority - Images removed (had images -> no images transition) + if (!currentState.hasImages) { + // Only notify if: first time seen without images, OR had images before + final imagesRemoved = isFirstSeen || previousState.hasImages; + if (imagesRemoved) { notifications.add(AppNotification( id: 'image-${device.id}-${timestamp.millisecondsSinceEpoch}', title: 'Missing Images', @@ -151,7 +176,7 @@ class NotificationGenerationService { )); } } - + return notifications; } @@ -199,4 +224,24 @@ class NotificationGenerationService { _notificationController.close(); _notificationListController.close(); } + + /// Reset state on sign-out + void reset() { + _notifications.clear(); + _previousDeviceStates.clear(); + _notificationListController.add([]); + } +} + +/// Tracks previous device state for transition detection +class _DeviceState { + _DeviceState({ + required this.isOnline, + required this.hasNote, + required this.hasImages, + }); + + final bool isOnline; + final bool hasNote; + final bool hasImages; } \ No newline at end of file diff --git a/lib/core/services/websocket_service.dart b/lib/core/services/websocket_service.dart index 5261d2e..3ad8e86 100644 --- a/lib/core/services/websocket_service.dart +++ b/lib/core/services/websocket_service.dart @@ -18,6 +18,7 @@ class WebSocketConfig { this.maxReconnectDelay = const Duration(seconds: 32), this.heartbeatInterval = const Duration(seconds: 30), this.heartbeatTimeout = const Duration(seconds: 45), + this.sendClientPing = true, }); final Uri baseUri; @@ -26,6 +27,7 @@ class WebSocketConfig { final Duration maxReconnectDelay; final Duration heartbeatInterval; final Duration heartbeatTimeout; + final bool sendClientPing; } /// Parameters used when establishing a socket connection. @@ -218,13 +220,11 @@ class WebSocketService { return; } - final type = decoded['type'] as String? ?? 'unknown'; - final payload = - (decoded['payload'] as Map?) ?? - const {}; - final headers = decoded['headers'] as Map?; + final payload = _extractPayload(decoded); + final type = _extractType(decoded, payload); + final headers = _extractHeaders(decoded); - if (type == 'system.heartbeat') { + if (type == 'system.heartbeat' || type == 'ping') { _lastHeartbeat = DateTime.now(); } @@ -280,26 +280,28 @@ class WebSocketService { _heartbeatTimer?.cancel(); _heartbeatWatchdog?.cancel(); - _heartbeatTimer = Timer.periodic(_config.heartbeatInterval, (_) { - if (_channel == null) { - return; - } - try { - sendType( - 'system.ping', - payload: { - 'timestamp': DateTime.now().toUtc().toIso8601String(), - 'platform': kIsWeb ? 'web' : 'flutter', - }, - ); - } on Object catch (e, stack) { - _logger.e( - 'WebSocketService: Failed to send ping', - error: e, - stackTrace: stack, - ); - } - }); + if (_config.sendClientPing) { + _heartbeatTimer = Timer.periodic(_config.heartbeatInterval, (_) { + if (_channel == null) { + return; + } + try { + sendType( + 'system.ping', + payload: { + 'timestamp': DateTime.now().toUtc().toIso8601String(), + 'platform': kIsWeb ? 'web' : 'flutter', + }, + ); + } on Object catch (e, stack) { + _logger.e( + 'WebSocketService: Failed to send ping', + error: e, + stackTrace: stack, + ); + } + }); + } _heartbeatWatchdog = Timer.periodic(const Duration(seconds: 5), (_) { if (_lastHeartbeat == null) { @@ -347,3 +349,54 @@ class WebSocketService { } SocketMessage? _lastMessage; + +Map _extractPayload(Map decoded) { + final payloadValue = decoded['payload']; + if (payloadValue is Map) { + return Map.from(payloadValue); + } + + final messageValue = decoded['message']; + if (messageValue is Map) { + return Map.from(messageValue); + } + if (messageValue != null) { + return {'message': messageValue}; + } + + final fallback = Map.from(decoded) + ..remove('type') + ..remove('identifier') + ..remove('message') + ..remove('payload') + ..remove('headers'); + return fallback; +} + +String _extractType( + Map decoded, + Map payload, +) { + final typeValue = decoded['type']; + if (typeValue is String && typeValue.isNotEmpty) { + return typeValue; + } + final actionValue = payload['action']; + if (actionValue is String && actionValue.isNotEmpty) { + return actionValue; + } + return 'message'; +} + +Map? _extractHeaders(Map decoded) { + final headers = decoded['headers'] as Map?; + final identifier = decoded['identifier']; + if (identifier == null) { + return headers; + } + final merged = {'identifier': identifier}; + if (headers != null) { + merged.addAll(headers); + } + return merged; +} diff --git a/lib/features/auth/presentation/providers/auth_notifier.dart b/lib/features/auth/presentation/providers/auth_notifier.dart index 2bd42dc..f8734ff 100644 --- a/lib/features/auth/presentation/providers/auth_notifier.dart +++ b/lib/features/auth/presentation/providers/auth_notifier.dart @@ -1,4 +1,5 @@ import 'dart:async'; +import 'dart:convert'; import 'dart:math' as math; import 'package:flutter/foundation.dart'; @@ -196,43 +197,58 @@ class Auth extends _$Auth { ..d('AUTH_NOTIFIER: Current state before signout: ${state.value}'); try { - // Get the use case - _logger.d('AUTH_NOTIFIER: Getting signOutUser use case'); - final signOutUser = ref.read(signOutUserProvider); - - // Execute sign out - _logger.i('AUTH_NOTIFIER: Executing sign out'); - final result = await signOutUser(); - _logger.d('AUTH_NOTIFIER: Sign out use case completed'); - - // Update state based on result - final newStatus = result.fold( - (failure) { - _logger.e('AUTH_NOTIFIER: ❌ Sign out failed: ${failure.message}'); - return AuthStatus.failure(failure.message); - }, - (_) { - _logger.i('AUTH_NOTIFIER: βœ… Sign out successful'); - return const AuthStatus.unauthenticated(); - }, - ); + // Set state to unauthenticated FIRST to unblock UI + _logger.d('AUTH_NOTIFIER: Setting state to unauthenticated'); + state = const AsyncValue.data(AuthStatus.unauthenticated()); - _logger.d('AUTH_NOTIFIER: Setting state to: $newStatus'); - state = AsyncValue.data(newStatus); - _logger.d('AUTH_NOTIFIER: Final state after signout: ${state.value}'); + // Disconnect WebSocket first (if enabled) to stop message processing if (EnvironmentConfig.useWebSockets) { - final webSocketService = ref.read(webSocketServiceProvider); - await webSocketService.disconnect( - code: 1000, - reason: 'User signed out', - ); + _logger.d('AUTH_NOTIFIER: Disconnecting WebSocket...'); + try { + final webSocketService = ref.read(webSocketServiceProvider); + // Don't await - just fire and forget + unawaited( + webSocketService + .disconnect(code: 1000, reason: 'User signed out') + .timeout(const Duration(seconds: 2)), + ); + } on Exception catch (e) { + _logger.w('AUTH_NOTIFIER: WebSocket disconnect error: $e'); + } } + + // Clear storage in background with timeout + _logger.d('AUTH_NOTIFIER: Clearing storage in background'); + unawaited(_clearStorageWithTimeout()); + + _logger.i('AUTH_NOTIFIER: βœ… Sign out initiated'); } on Exception catch (e, stack) { _logger.e('AUTH_NOTIFIER: ⚠️ Exception during sign out: $e\n$stack'); state = AsyncValue.data(AuthStatus.failure(e.toString())); } } + Future _clearStorageWithTimeout() async { + try { + final storage = ref.read(storageServiceProvider); + final localDataSource = ref.read(authLocalDataSourceProvider); + final notificationService = ref.read(notificationGenerationServiceProvider); + + // Reset notification state to prevent memory leak on re-login + notificationService.reset(); + _logger.d('AUTH_NOTIFIER: Notification state reset'); + + await Future.wait([ + storage.clearCredentials(), + localDataSource.clearUser(), + ]).timeout(const Duration(seconds: 5)); + + _logger.d('AUTH_NOTIFIER: Storage cleared successfully'); + } on Exception catch (e) { + _logger.w('AUTH_NOTIFIER: Storage clear timed out or failed: $e'); + } + } + Future _performWebSocketHandshake({ required String fqdn, required String login, @@ -241,64 +257,88 @@ class Auth extends _$Auth { DateTime? issuedAt, String? signature, }) async { + var failureHandled = false; final config = ref.read(webSocketConfigProvider); final storage = ref.read(storageServiceProvider); final localDataSource = ref.read(authLocalDataSourceProvider); final service = ref.read(webSocketServiceProvider); - final baseUri = config.baseUri; - final queryParameters = Map.from(baseUri.queryParameters); final resolvedSite = (siteName ?? storage.siteName ?? fqdn).trim(); - if (resolvedSite.isNotEmpty) { - queryParameters['site'] = resolvedSite; - } - final uri = baseUri.replace( - queryParameters: queryParameters.isEmpty ? null : queryParameters, + final uri = _buildActionCableUri( + baseUri: config.baseUri, + fqdn: fqdn, + apiKey: apiKey, ); - final payload = { - 'type': 'auth.init', - 'payload': { - 'fqdn': fqdn, - 'login': login, - 'api_key': apiKey, - 'site_name': resolvedSite, - 'timestamp': (issuedAt ?? DateTime.now().toUtc()).toIso8601String(), - if (signature != null && signature.isNotEmpty) 'signature': signature, - }, - }; - if (service.isConnected) { await service.disconnect(code: 4000, reason: 'Re-authenticating'); } - final completer = Completer(); + final identifier = jsonEncode(const {'channel': 'RxgChannel'}); + final subscriptionPayload = { + 'command': 'subscribe', + 'identifier': identifier, + }; + + final completer = Completer<_ActionCableAuthResult>(); final subscription = service.messages.listen((message) { - if (message.type == 'auth.ack' || message.type == 'auth.error') { + if (message.type == 'confirm_subscription' && + _identifierMatches(message, identifier)) { if (!completer.isCompleted) { - completer.complete(message); + completer.complete(const _ActionCableAuthResult.success()); + } + } else if (message.type == 'reject_subscription' && + _identifierMatches(message, identifier)) { + if (!completer.isCompleted) { + completer.complete( + const _ActionCableAuthResult.failure( + 'Subscription rejected by server', + ), + ); + } + } else if (message.type == 'disconnect') { + if (!completer.isCompleted) { + final reason = + message.payload['reason'] as String? ?? + message.payload['message'] as String?; + completer.complete( + _ActionCableAuthResult.failure( + reason ?? 'Connection closed by server', + ), + ); } } }); + final stateSubscription = service.connectionState.listen((state) { + if (state == SocketConnectionState.disconnected && + !completer.isCompleted) { + completer.complete( + const _ActionCableAuthResult.failure( + 'Connection closed before subscription confirmed', + ), + ); + } + }); + _logger ..i('AUTH_NOTIFIER: Initiating WebSocket handshake') ..d('AUTH_NOTIFIER: WebSocket URI: $uri'); try { - await service.connect( - WebSocketConnectionParams(uri: uri, handshakeMessage: payload), - ); + await service.connect(WebSocketConnectionParams(uri: uri)); + service.send(subscriptionPayload); - final socketMessage = await completer.future.timeout( + final result = await completer.future.timeout( const Duration(seconds: 15), + onTimeout: () => const _ActionCableAuthResult.failure( + 'WebSocket handshake timed out', + ), ); - if (socketMessage.type == 'auth.error') { - final errorMessage = - socketMessage.payload['message'] as String? ?? - 'Authentication error'; + if (!result.success) { + final errorMessage = result.message; await storage.setAuthenticated(value: false); await localDataSource.clearSession(); await service.disconnect(code: 4401, reason: 'auth.error'); @@ -309,68 +349,47 @@ class Auth extends _$Auth { success: false, message: errorMessage, ); + failureHandled = true; throw Exception(errorMessage); } - final payloadMap = socketMessage.payload; - final sessionToken = payloadMap['sessionToken'] as String?; - final expiresAtIso = payloadMap['expiresAt'] as String?; - DateTime? expiresAt; - if (expiresAtIso != null) { - expiresAt = DateTime.tryParse(expiresAtIso); - } - - if (sessionToken != null && - sessionToken.isNotEmpty && - expiresAt != null) { - await localDataSource.saveSession( - token: sessionToken, - expiresAt: expiresAt, - ); - } else { - await localDataSource.clearSession(); - } - + await localDataSource.clearSession(); await storage.setAuthenticated(value: true); - final userPayload = - (payloadMap['user'] as Map?) ?? const {}; - final resolvedLogin = - userPayload['login'] as String? ?? login; - final resolvedDisplayName = - userPayload['siteName'] as String? ?? resolvedSite; - final userModel = UserModel( - username: resolvedLogin, + username: login, apiUrl: 'https://$fqdn', - displayName: resolvedDisplayName, + displayName: resolvedSite.isEmpty ? login : resolvedSite, email: null, ); await localDataSource.saveUser(userModel); await _recordAuthAttempt( fqdn: fqdn, - login: resolvedLogin, - siteName: resolvedDisplayName, + login: login, + siteName: resolvedSite, success: true, - message: 'auth.ack', + message: 'action_cable.confirm_subscription', ); return userModel.toEntity(); - } on TimeoutException { - await storage.setAuthenticated(value: false); - await localDataSource.clearSession(); - await service.disconnect(code: 4408, reason: 'Handshake timeout'); - await _recordAuthAttempt( - fqdn: fqdn, - login: login, - siteName: siteName ?? resolvedSite, - success: false, - message: 'WebSocket handshake timed out', - ); - throw Exception('WebSocket handshake timed out'); + } on Exception catch (e) { + if (!failureHandled) { + await storage.setAuthenticated(value: false); + await localDataSource.clearSession(); + await service.disconnect(code: 4401, reason: 'auth.error'); + await _recordAuthAttempt( + fqdn: fqdn, + login: login, + siteName: resolvedSite, + success: false, + message: e.toString(), + ); + } + rethrow; } finally { await subscription.cancel(); + await stateSubscription.cancel(); } } @@ -425,3 +444,43 @@ AuthStatus? authStatus(AuthStatusRef ref) { final authAsync = ref.watch(authProvider); return authAsync.valueOrNull; } + +Uri _buildActionCableUri({ + required Uri baseUri, + required String fqdn, + required String apiKey, +}) { + final useBaseUri = EnvironmentConfig.isDevelopment; + final uri = useBaseUri + ? baseUri + : Uri( + scheme: 'wss', + host: fqdn, + path: '/cable', + ); + + final queryParameters = Map.from(uri.queryParameters); + queryParameters['api_key'] = apiKey; + + return uri.replace( + queryParameters: queryParameters.isEmpty ? null : queryParameters, + ); +} + +bool _identifierMatches(SocketMessage message, String identifier) { + final headerIdentifier = message.headers?['identifier']; + if (headerIdentifier is String && headerIdentifier.isNotEmpty) { + return headerIdentifier == identifier; + } + return false; +} + +class _ActionCableAuthResult { + const _ActionCableAuthResult.success() + : success = true, + message = ''; + const _ActionCableAuthResult.failure(this.message) : success = false; + + final bool success; + final String message; +} diff --git a/log.txt b/log.txt new file mode 100644 index 0000000..e294765 --- /dev/null +++ b/log.txt @@ -0,0 +1,2901 @@ +Launching lib/main.dart on Pixel Fold in debug mode... +Running Gradle task 'assembleDebug'... 9.9s +βœ“ Built build/app/outputs/flutter-apk/app-debug.apk +Installing build/app/outputs/flutter-apk/app-debug.apk... 5.1s +D/FlutterJNI( 9629): Beginning load of flutter... +D/FlutterJNI( 9629): flutter (null) was loaded normally! +I/flutter ( 9629): [IMPORTANT:flutter/shell/platform/android/android_context_vk_impeller.cc(62)] Using the Impeller rendering backend (Vulkan). +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:11:13) +I/flutter ( 9629): β”‚ #1 main (package:rgnets_fdk/main.dart:35:21) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: Setting environment to development +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:14:9) +I/flutter ( 9629): β”‚ #1 main (package:rgnets_fdk/main.dart:35:21) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: Environment set, isDevelopment=true, isStaging=false, isProduction=false +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:17:9) +I/flutter ( 9629): β”‚ #1 main (package:rgnets_fdk/main.dart:35:21) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: API Base URL will be: http://mock-api.local +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:18:9) +I/flutter ( 9629): β”‚ #1 main (package:rgnets_fdk/main.dart:35:21) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: WebSocket URL will be: ws://localhost:9443/ws +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:19:9) +I/flutter ( 9629): β”‚ #1 main (package:rgnets_fdk/main.dart:35:21) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: useSyntheticData=true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +Syncing files to device Pixel Fold... +I/nets.rgnets_fdk( 9629): Compiler allocated 4970KB to compile void android.view.ViewRootImpl.performTraversals() +Syncing files to device Pixel Fold... 59ms + +Flutter run key commands. +r Hot reload. πŸ”₯πŸ”₯πŸ”₯ +R Hot restart. +h List all available interactive commands. +d Detach (terminate "flutter run" but leave application running). +c Clear the screen +q Quit (terminate the application on the device). + +A Dart VM Service on Pixel Fold is available at: http://127.0.0.1:54899/sNp2TXI6DA8=/ +I/Choreographer( 9629): Skipped 64 frames! The application may be doing too much work on its main thread. +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 MockDataService._generateNetworkTopology (package:rgnets_fdk/core/services/mock_data_service.dart:35:9) +I/flutter ( 9629): β”‚ #1 new MockDataService._internal (package:rgnets_fdk/core/services/mock_data_service.dart:13:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ MockDataService: Generated 680 rooms +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 MockDataService._generateNetworkTopology (package:rgnets_fdk/core/services/mock_data_service.dart:36:9) +I/flutter ( 9629): β”‚ #1 new MockDataService._internal (package:rgnets_fdk/core/services/mock_data_service.dart:13:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ MockDataService: Generated 1925 total devices +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 MockDataService._generateNetworkTopology (package:rgnets_fdk/core/services/mock_data_service.dart:37:9) +I/flutter ( 9629): β”‚ #1 new MockDataService._internal (package:rgnets_fdk/core/services/mock_data_service.dart:13:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ - Access Points: 1024 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 MockDataService._generateNetworkTopology (package:rgnets_fdk/core/services/mock_data_service.dart:38:9) +I/flutter ( 9629): β”‚ #1 new MockDataService._internal (package:rgnets_fdk/core/services/mock_data_service.dart:13:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ - ONTs: 745 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 MockDataService._generateNetworkTopology (package:rgnets_fdk/core/services/mock_data_service.dart:39:9) +I/flutter ( 9629): β”‚ #1 new MockDataService._internal (package:rgnets_fdk/core/services/mock_data_service.dart:13:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ - Switches: 151 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 MockDataService._generateNetworkTopology (package:rgnets_fdk/core/services/mock_data_service.dart:40:9) +I/flutter ( 9629): β”‚ #1 new MockDataService._internal (package:rgnets_fdk/core/services/mock_data_service.dart:13:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ - WLAN Controllers: 5 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 new ApiService (package:rgnets_fdk/core/services/api_service.dart:18:9) +I/flutter ( 9629): β”‚ #1 apiServiceProvider. (package:rgnets_fdk/core/providers/core_providers.dart:81:10) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ API_SERVICE: Constructor called +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 new ApiService (package:rgnets_fdk/core/services/api_service.dart:19:9) +I/flutter ( 9629): β”‚ #1 apiServiceProvider. (package:rgnets_fdk/core/providers/core_providers.dart:81:10) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ API_SERVICE: Environment is development +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 new ApiService (package:rgnets_fdk/core/services/api_service.dart:20:9) +I/flutter ( 9629): β”‚ #1 apiServiceProvider. (package:rgnets_fdk/core/providers/core_providers.dart:81:10) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ API_SERVICE: apiBaseUrl=http://mock-api.local +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 BackgroundRefreshService.startBackgroundRefresh (package:rgnets_fdk/core/services/background_refresh_service.dart:43:13) +I/flutter ( 9629): β”‚ #1 _FDKAppState.initState. (package:rgnets_fdk/main.dart:72:50) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› BackgroundRefreshService: Starting background refresh +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:34:9) +I/flutter ( 9629): β”‚ #1 _SplashScreenState.initState. (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:27:7) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:03:59.914 (+0:00:01.062258) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸš€ SPLASH_SCREEN: Navigation flow starting +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:35:9) +I/flutter ( 9629): β”‚ #1 _SplashScreenState.initState. (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:27:7) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:03:59.915 (+0:00:01.063827) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: Environment: development +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:36:9) +I/flutter ( 9629): β”‚ #1 _SplashScreenState.initState. (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:27:7) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:03:59.916 (+0:00:01.064401) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: API Base URL: http://mock-api.local +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:37:9) +I/flutter ( 9629): β”‚ #1 _SplashScreenState.initState. (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:27:7) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:03:59.916 (+0:00:01.064932) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: Use Synthetic Data: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +The Flutter DevTools debugger and profiler on Pixel Fold is available at: http://127.0.0.1:9101?uri=http://127.0.0.1:54899/sNp2TXI6DA8=/ +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:46:12) +I/flutter ( 9629): β”‚ #1 _SplashScreenState.initState. (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:27:7) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:03:59.917 (+0:00:01.065434) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: Starting 2-second initialization delay +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/Choreographer( 9629): Skipped 35 frames! The application may be doing too much work on its main thread. +I/HWUI ( 9629): Using FreeType backend (prop=Auto) +D/ImeBackDispatcher( 9629): switch root view (mImeCallbacks.size=0) +D/InsetsController( 9629): hide(ime()) +I/ImeTracker( 9629): com.rgnets.rgnets_fdk:371330a6: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:48:12) +I/flutter ( 9629): β”‚ #1 +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:01.922 (+0:00:03.070834) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: Initialization delay complete +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:53:11) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:01.926 (+0:00:03.075029) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸ”§ SPLASH_SCREEN: Development mode detected +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:54:11) +I/flutter ( 9629): β”‚ #1 +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:01.928 (+0:00:03.076488) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: Skipping auth, navigating directly to /home +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:57:16) +I/flutter ( 9629): β”‚ #1 +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:01.929 (+0:00:03.077997) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: Widget is mounted, navigating... +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:59:16) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:01.950 (+0:00:03.098795) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ SPLASH_SCREEN: βœ… Navigation to /home completed +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] MainScaffold initialized +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:HomeScreen] HomeScreen - Auth state type: AsyncLoading +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:HomeScreen] HomeScreen - Auth is loading +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DevicesNotifier.build (package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart:28:15) +I/flutter ( 9629): β”‚ #1 AsyncNotifierProviderImpl.runNotifierBuild (package:riverpod/src/async_notifier/base.dart:146:43) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:02.086 (+0:00:03.234439) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ DevicesProvider: Loading devices +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DevicesNotifier.silentRefresh (package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart:127:15) +I/flutter ( 9629): β”‚ #1 DevicesNotifier._startBackgroundRefresh. (package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart:173:13) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:02.093 (+0:00:03.241255) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ DevicesProvider: Silent background refresh (context: list) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 new DeviceRepositoryImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:21:13) +I/flutter ( 9629): β”‚ #1 deviceRepositoryProvider. (package:rgnets_fdk/core/providers/repository_providers.dart:103:22) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ DEVICE_REPOSITORY: Constructor called +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 GetDevices.call (package:rgnets_fdk/features/devices/domain/usecases/get_devices.dart:18:13) +I/flutter ( 9629): β”‚ #1 DevicesNotifier.silentRefresh. (package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart:144:42) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› GetDevices use case: Calling repository.getDevices() with fields: id,status,online,last_seen,signal_strength +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.startOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:28:13) +I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:84:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› Performance: Started tracking "DeviceRepository.getDevices" +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:79:15) +I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl.getDevices. (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:71:13) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸ” DEVICE_REPOSITORY: getDevices() called at 2026-01-06T12:04:02.125176 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 GetDevices.call (package:rgnets_fdk/features/devices/domain/usecases/get_devices.dart:18:13) +I/flutter ( 9629): β”‚ #1 DevicesNotifier.build. (package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart:45:42) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› GetDevices use case: Calling repository.getDevices() with fields: id,name,type,status,ip,host,mac,scratch,pms_room,location,last_seen,signal_strength,connected_clients,online,note,images +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.startOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:28:13) +I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:84:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› Performance: Started tracking "DeviceRepository.getDevices" +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:79:15) +I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl.getDevices. (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:71:13) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸ” DEVICE_REPOSITORY: getDevices() called at 2026-01-06T12:04:02.149803 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomsNotifier.build (package:rgnets_fdk/features/rooms/presentation/providers/rooms_riverpod_provider.dart:15:15) +I/flutter ( 9629): β”‚ #1 AsyncNotifierProviderImpl.runNotifierBuild (package:riverpod/src/async_notifier/base.dart:146:43) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:02.158 (+0:00:03.306806) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ RoomsProvider: Loading rooms +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:30:11) +I/flutter ( 9629): β”‚ #1 GetRooms.call (package:rgnets_fdk/features/rooms/domain/usecases/get_rooms.dart:15:23) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ RoomRepositoryImpl.getRooms() called +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:31:11) +I/flutter ( 9629): β”‚ #1 GetRooms.call (package:rgnets_fdk/features/rooms/domain/usecases/get_rooms.dart:15:23) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ Environment check: isDevelopment=true, isStaging=false, isProduction=false +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:51:17) +I/flutter ( 9629): β”‚ #1 GetRooms.call (package:rgnets_fdk/features/rooms/domain/usecases/get_rooms.dart:15:23) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ RoomRepositoryImpl: Using DEVELOPMENT MODE - returning mock data +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomMockDataSourceImpl.getRooms (package:rgnets_fdk/features/rooms/data/datasources/room_mock_data_source.dart:21:13) +I/flutter ( 9629): β”‚ #1 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:52:49) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ RoomMockDataSource: Using mock data for development +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 NotificationsDomainNotifier.build (package:rgnets_fdk/features/notifications/presentation/providers/notifications_domain_provider.dart:19:15) +I/flutter ( 9629): β”‚ #1 AsyncNotifierProviderImpl.runNotifierBuild (package:riverpod/src/async_notifier/base.dart:146:43) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:02.181 (+0:00:03.329624) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ NotificationsProvider: Loading notifications +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 NotificationRepositoryImpl.getNotifications (package:rgnets_fdk/features/notifications/data/repositories/notification_repository_impl.dart:33:15) +I/flutter ( 9629): β”‚ #1 GetNotifications.call (package:rgnets_fdk/features/notifications/domain/usecases/get_notifications.dart:15:23) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› πŸ”” NotificationRepository: Fetching devices for notification generation +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.startOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:28:13) +I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:84:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› Performance: Started tracking "DeviceRepository.getDevices" +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:79:15) +I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl.getDevices. (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:71:13) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸ” DEVICE_REPOSITORY: getDevices() called at 2026-01-06T12:04:02.195517 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 NotificationRepositoryImpl.getNotifications (package:rgnets_fdk/features/notifications/data/repositories/notification_repository_impl.dart:33:15) +I/flutter ( 9629): β”‚ #1 DeviceNotificationsNotifier.build (package:rgnets_fdk/features/notifications/presentation/providers/device_notification_provider.dart:29:37) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› πŸ”” NotificationRepository: Fetching devices for notification generation +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.startOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:28:13) +I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:84:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› Performance: Started tracking "DeviceRepository.getDevices" +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:79:15) +I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl.getDevices. (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:71:13) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸ” DEVICE_REPOSITORY: getDevices() called at 2026-01-06T12:04:02.210282 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] FDKAppBar initialized with traveling morse code: "control communication cognizance" +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] AppBarNotifier initialized +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 0, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updating route to: /home +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updated app bar state - Title: Dashboard, Search: false +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] Route changed to: /home, Index: 0 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 Auth.build (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:35:9) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:02.527 (+0:00:03.675293) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸ” AUTH_NOTIFIER: build() called - initializing auth state +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 Auth.build (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:36:9) +I/flutter ( 9629): β”‚ #1 +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:02.527 (+0:00:03.675878) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Provider hash: 288151843 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 Auth.build (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:40:15) +I/flutter ( 9629): β”‚ #1 +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:02.528 (+0:00:03.676246) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Checking for existing user session... +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:91:17) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Cache is valid, loading from cache +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:91:17) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Cache is valid, loading from cache +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:91:17) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Cache is valid, loading from cache +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:91:17) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Cache is valid, loading from cache +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 Auth.build. (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:56:17) +I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:02.541 (+0:00:03.689614) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ AUTH_NOTIFIER: βœ… Found existing user session! +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 Auth.build. (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:57:17) +I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:02.542 (+0:00:03.690185) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Username: developer +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 Auth.build. (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:58:17) +I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:02.542 (+0:00:03.690738) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: API URL: https://dev.local +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceLocalDataSourceImpl.getCachedDevices (package:rgnets_fdk/features/devices/data/datasources/device_local_data_source.dart:80:17) +I/flutter ( 9629): β”‚ #1 +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› Loaded 1920 devices from indexed cache +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:95:19) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Loaded 1920 devices from cache +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._refreshInBackground (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:162:15) +I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:98:21) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› DeviceRepositoryImpl: Starting background refresh +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.endOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:68:13) +I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:88:7) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› Performance: DeviceRepository.getDevices completed [SUCCESS] in 672ms +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 GetDevices.call. (package:rgnets_fdk/features/devices/domain/usecases/get_devices.dart:22:28) +I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ GetDevices use case: Success - 1920 devices +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceLocalDataSourceImpl.getCachedDevices (package:rgnets_fdk/features/devices/data/datasources/device_local_data_source.dart:80:17) +I/flutter ( 9629): β”‚ #1 +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› Loaded 1920 devices from indexed cache +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:95:19) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Loaded 1920 devices from cache +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._refreshInBackground (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:162:15) +I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:98:21) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› DeviceRepositoryImpl: Starting background refresh +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.endOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:38:15) +I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:88:7) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ ⚠️ Performance: No active operation found for "DeviceRepository.getDevices" +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 GetDevices.call. (package:rgnets_fdk/features/devices/domain/usecases/get_devices.dart:22:28) +I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ GetDevices use case: Success - 1920 devices +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DevicesNotifier.build.. (package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart:58:25) +I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:02.951 (+0:00:04.100062) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ DevicesProvider: Successfully loaded 1920 devices with 16 fields +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceLocalDataSourceImpl.getCachedDevices (package:rgnets_fdk/features/devices/data/datasources/device_local_data_source.dart:80:17) +I/flutter ( 9629): β”‚ #1 +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› Loaded 1920 devices from indexed cache +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:95:19) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Loaded 1920 devices from cache +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._refreshInBackground (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:162:15) +I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:98:21) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› DeviceRepositoryImpl: Starting background refresh +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.endOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:38:15) +I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:88:7) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ ⚠️ Performance: No active operation found for "DeviceRepository.getDevices" +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 NotificationRepositoryImpl.getNotifications. (package:rgnets_fdk/features/notifications/data/repositories/notification_repository_impl.dart:44:19) +I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› Fetched 1920 devices for notification generation +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 NotificationsDomainNotifier.build. (package:rgnets_fdk/features/notifications/presentation/providers/notifications_domain_provider.dart:33:21) +I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:03.033 (+0:00:04.181960) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ NotificationsProvider: Successfully loaded 2169 notifications +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceLocalDataSourceImpl.getCachedDevices (package:rgnets_fdk/features/devices/data/datasources/device_local_data_source.dart:80:17) +I/flutter ( 9629): β”‚ #1 +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› Loaded 1920 devices from indexed cache +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:95:19) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Loaded 1920 devices from cache +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._refreshInBackground (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:162:15) +I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:98:21) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› DeviceRepositoryImpl: Starting background refresh +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.endOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:38:15) +I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:88:7) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ ⚠️ Performance: No active operation found for "DeviceRepository.getDevices" +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 NotificationRepositoryImpl.getNotifications. (package:rgnets_fdk/features/notifications/data/repositories/notification_repository_impl.dart:44:19) +I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› Fetched 1920 devices for notification generation +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomMockDataSourceImpl.getRooms (package:rgnets_fdk/features/rooms/data/datasources/room_mock_data_source.dart:30:13) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ RoomMockDataSource: Parsing 680 mock rooms from JSON +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:54:17) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ RoomRepositoryImpl: Returning 680 mock rooms +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomsNotifier.build. (package:rgnets_fdk/features/rooms/presentation/providers/rooms_riverpod_provider.dart:29:21) +I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:03.167 (+0:00:04.315921) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ RoomsProvider: Successfully loaded 680 rooms +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 0, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +D/WindowOnBackDispatcher( 9629): setTopOnBackInvokedCallback (unwrapped): io.flutter.embedding.android.FlutterActivity$1@eaf2497 +D/WindowOnBackDispatcher( 9629): setTopOnBackInvokedCallback (unwrapped): android.app.Activity$$ExternalSyntheticLambda0@d54eb06 +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +D/ProfileInstaller( 9629): Installing profile for com.rgnets.rgnets_fdk +I/scudo ( 9629): Can't populate more pages for size class 65552. +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/nets.rgnets_fdk( 9629): Waiting for a blocking GC NativeAlloc +I/nets.rgnets_fdk( 9629): NativeAlloc concurrent mark compact GC freed 25MB AllocSpace bytes, 127(12MB) LOS objects, 82% free, 5315KB/29MB, paused 324us,6.541ms total 76.623ms +I/nets.rgnets_fdk( 9629): WaitForGcToComplete blocked NativeAlloc on NativeAlloc for 74.789ms +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] Navigation item tapped: 5 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] Tab changed from 0 to 5 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updating route to: /settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updated app bar state - Title: Settings, Search: false +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] Route changed to: /settings, Index: 5 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 BackgroundRefreshService._performRefresh (package:rgnets_fdk/core/services/background_refresh_service.dart:70:13) +I/flutter ( 9629): β”‚ #1 new Future.delayed. (dart:async/future.dart:419:42) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› BackgroundRefreshService: Starting background refresh +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:30:11) +I/flutter ( 9629): β”‚ #1 BackgroundRefreshService._refreshRooms (package:rgnets_fdk/core/services/background_refresh_service.dart:124:48) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ RoomRepositoryImpl.getRooms() called +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:31:11) +I/flutter ( 9629): β”‚ #1 BackgroundRefreshService._refreshRooms (package:rgnets_fdk/core/services/background_refresh_service.dart:124:48) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ Environment check: isDevelopment=true, isStaging=false, isProduction=false +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:51:17) +I/flutter ( 9629): β”‚ #1 BackgroundRefreshService._refreshRooms (package:rgnets_fdk/core/services/background_refresh_service.dart:124:48) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ RoomRepositoryImpl: Using DEVELOPMENT MODE - returning mock data +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomMockDataSourceImpl.getRooms (package:rgnets_fdk/features/rooms/data/datasources/room_mock_data_source.dart:21:13) +I/flutter ( 9629): β”‚ #1 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:52:49) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ RoomMockDataSource: Using mock data for development +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updating route to: /settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updated app bar state - Title: Settings, Search: false +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] Route changed to: /settings, Index: 5 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +D/WindowOnBackDispatcher( 9629): setTopOnBackInvokedCallback (unwrapped): io.flutter.embedding.android.FlutterActivity$1@eaf2497 +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomMockDataSourceImpl.getRooms (package:rgnets_fdk/features/rooms/data/datasources/room_mock_data_source.dart:30:13) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ RoomMockDataSource: Parsing 680 mock rooms from JSON +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:54:17) +I/flutter ( 9629): β”‚ #1  +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ RoomRepositoryImpl: Returning 680 mock rooms +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 BackgroundRefreshService._refreshRooms. (package:rgnets_fdk/core/services/background_refresh_service.dart:134:19) +I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› BackgroundRefreshService: Rooms refreshed in 623ms +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 Auth.signOut (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:196:9) +I/flutter ( 9629): β”‚ #1 SettingsScreen._showSignOutDialog.. (package:rgnets_fdk/features/settings/presentation/screens/settings_screen.dart:571:53) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:11.796 (+0:00:12.944768) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ πŸšͺ AUTH_NOTIFIER: signOut() called +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 Auth.signOut (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:197:9) +I/flutter ( 9629): β”‚ #1 SettingsScreen._showSignOutDialog.. (package:rgnets_fdk/features/settings/presentation/screens/settings_screen.dart:571:53) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:11.797 (+0:00:12.945856) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Current state before signout: AuthStatus.authenticated(user: User(username: developer, apiUrl: https://dev.local, displayName: Developer User, email: dev@example.com)) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 Auth.signOut (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:201:15) +I/flutter ( 9629): β”‚ #1 SettingsScreen._showSignOutDialog.. (package:rgnets_fdk/features/settings/presentation/screens/settings_screen.dart:571:53) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:11.798 (+0:00:12.946385) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Setting state to unauthenticated +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 Auth.signOut (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:206:17) +I/flutter ( 9629): β”‚ #1 SettingsScreen._showSignOutDialog.. (package:rgnets_fdk/features/settings/presentation/screens/settings_screen.dart:571:53) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:11.799 (+0:00:12.947382) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Disconnecting WebSocket... +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 Auth.signOut (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:221:15) +I/flutter ( 9629): β”‚ #1 SettingsScreen._showSignOutDialog.. (package:rgnets_fdk/features/settings/presentation/screens/settings_screen.dart:571:53) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:11.803 (+0:00:12.951307) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Clearing storage in background +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 Auth.signOut (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:224:15) +I/flutter ( 9629): β”‚ #1 SettingsScreen._showSignOutDialog.. (package:rgnets_fdk/features/settings/presentation/screens/settings_screen.dart:571:53) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ 12:04:11.805 (+0:00:12.953512) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ’‘ AUTH_NOTIFIER: βœ… Sign out initiated +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updating route to: /settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updated app bar state - Title: Settings, Search: false +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] Route changed to: /settings, Index: 5 +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +D/WindowOnBackDispatcher( 9629): setTopOnBackInvokedCallback (unwrapped): android.app.Activity$$ExternalSyntheticLambda0@d54eb06 +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) +I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) +I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true +I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +D/WindowOnBackDispatcher( 9629): setTopOnBackInvokedCallback (unwrapped): io.flutter.embedding.android.FlutterActivity$1@eaf2497 +I/scudo ( 9629): Scudo ERROR: internal map failure (error desc=Out of memory) +F/libc ( 9629): Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 9696 (1.raster), pid 9629 (nets.rgnets_fdk) +*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** +Build fingerprint: 'google/felix/felix:16/BP3A.251005.004.B2/14331693:user/release-keys' +Kernel Release: '6.1.134-android14-11-g66e758f7d0c0-ab13748739' +Revision: 'MP1.0' +ABI: 'arm64' +Timestamp: 2026-01-06 12:04:12.757364501-0800 +Process uptime: 17s +Executable: /system/bin/app_process64 +Cmdline: com.rgnets.rgnets_fdk +pid: 9629, tid: 9696, name: 1.raster >>> com.rgnets.rgnets_fdk <<< +uid: 10324 +tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE) +esr: 0000000092000006 (Data Abort Exception 0x24) +signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr -------- +Abort message: 'Scudo ERROR: internal map failure (error desc=Out of memory)' + x0 0000000000000000 x1 00000000000025e0 x2 0000000000000006 x3 0000006fc0446130 + x4 71746b6860651f6f x5 71746b6860651f6f x6 71746b6860651f6f x7 7f7f7f7f7f7f7f7f + x8 00000000000000f0 x9 f3d3ca5156c5f78e x10 0000000000000001 x11 00000072e955e150 + x12 00000000695d6abc x13 000000007fffffff x14 00000000004c8b2a x15 000003e966838e1d + x16 00000072e95c70d8 x17 00000072e95af5c0 x18 0000006f379fc000 x19 000000000000259d + x20 00000000000025e0 x21 00000000ffffffff x22 0000000000000005 x23 0000000000000000 + x24 0000006d56881000 x25 0000006d568816e0 x26 0000006d568ee000 x27 fffffffffffffff0 + x28 0000000000000000 x29 0000006fc04461b0 + lr 00000072e95481b8 sp 0000006fc0446130 pc 00000072e95481dc pst 0000000000001000 + esr 0000000092000006 +52 total frames +backtrace: + #00 pc 00000000000741dc /apex/com.android.runtime/lib64/bionic/libc.so (abort+156) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) + #01 pc 000000000005b058 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::die()+8) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) + #02 pc 000000000005bd1c /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportRawError(char const*)+28) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) + #03 pc 000000000005c44c /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportMapError(unsigned long)+172) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) + #04 pc 000000000005b920 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::MemMapLinux::remapImpl(unsigned long, unsigned long, char const*, unsigned long)+208) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) + #05 pc 0000000000060b44 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::MapAllocator>::allocate(scudo::Options const&, unsigned long, unsigned long, unsigned long*, scudo::FillContentsMode)+404) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) + #06 pc 000000000005d5f4 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator::allocate(unsigned long, scudo::Chunk::Origin, unsigned long, bool)+900) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) + #07 pc 000000000005d924 /apex/com.android.runtime/lib64/bionic/libc.so (scudo_malloc+36) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) + #08 pc 000000000005777c /apex/com.android.runtime/lib64/bionic/libc.so (malloc+44) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) + #09 pc 0000000001b280f8 /vendor/lib64/egl/libGLES_mali.so (gfx::command_pool::create_command_buffer_builder(bool)+40) (BuildId: cdb93069f4b906eaed1b15fd6bccfde3d2538c67) + #10 pc 000000000092aef4 /vendor/lib64/egl/libGLES_mali.so (vkAllocateCommandBuffers+340) (BuildId: cdb93069f4b906eaed1b15fd6bccfde3d2538c67) + #11 pc 00000000000223b0 /system/lib64/libvulkan.so (vulkan::driver::AllocateCommandBuffers(VkDevice_T*, VkCommandBufferAllocateInfo const*, VkCommandBuffer_T**)+64) (BuildId: 9638771a6d52b924c17ce0d4a7147a52) + #12 pc 0000000001deb51c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #13 pc 0000000001e0d394 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #14 pc 0000000001df65d4 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #15 pc 0000000001df6568 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #16 pc 0000000001df6518 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #17 pc 0000000001df516c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #18 pc 0000000001df4f34 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #19 pc 0000000001dafe08 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #20 pc 0000000001daeb58 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #21 pc 0000000001daeeb4 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #22 pc 0000000001db2798 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #23 pc 0000000001daa14c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #24 pc 0000000001daa050 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #25 pc 0000000001daeb58 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #26 pc 0000000001daea3c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #27 pc 0000000001dc2738 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #28 pc 0000000001d80544 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #29 pc 0000000001d7fc50 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #30 pc 0000000001d7fa84 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #31 pc 0000000001d879b0 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #32 pc 0000000001a2ae7c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #33 pc 0000000001d881c8 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #34 pc 0000000001a2b5ec /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #35 pc 0000000001a2a910 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #36 pc 0000000001a2adcc /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #37 pc 0000000001d89354 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #38 pc 0000000001e3a8e8 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #39 pc 0000000001e3a6c0 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #40 pc 0000000001e23e6c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #41 pc 0000000001e61ef8 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #42 pc 00000000019c47ec /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #43 pc 00000000019ca2e4 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #44 pc 0000000000014bd0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+1216) (BuildId: cb6b340ad1d5b10fa22dc2cf5ae28825) + #45 pc 0000000000025784 /system/lib64/libandroid.so (ALooper_pollOnce+100) (BuildId: bf08322d292d1d8730eb313a405f8748) + #46 pc 00000000019ca26c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #47 pc 00000000019c4738 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #48 pc 00000000019c85b0 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #49 pc 00000000019c8448 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) + #50 pc 0000000000084cfc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*) (.__uniq.67847048707805468364044055584648682506)+236) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) + #51 pc 0000000000077500 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) +Lost connection to device. diff --git a/memoryissue.txt b/memoryissue.txt new file mode 100644 index 0000000..00647ef --- /dev/null +++ b/memoryissue.txt @@ -0,0 +1,239 @@ +# MEMORY ISSUE INVESTIGATION REPORT: Flutter FDK App OOM Crash + +**Date:** 2026-01-06 +**Error:** Scudo ERROR: internal map failure (error desc=Out of memory) +**Symptom:** 2,169 unread notifications accumulated, app crashed on sign-out + +--- + +## CRITICAL ISSUE #1: UNBOUNDED NOTIFICATION LIST GROWTH (REAL) + +**File:** `lib/core/services/notification_generation_service.dart` +**Lines:** 22, 42, 159-160 + +**Problem:** +```dart +// Line 22: Single in-memory list with NO SIZE LIMIT +final List _notifications = []; + +// Lines 41-42: CONTINUOUSLY ACCUMULATING notifications every 2 minutes +_notifications.addAll(newNotifications); + +// Line 159: Returns ENTIRE list every time +List getAllNotifications() { + return List.from(_notifications); +} +``` + +**Root Cause:** The `NotificationGenerationService` maintains an unbounded list that grows with every background refresh cycle. Every 2 minutes, the `BackgroundRefreshService` calls `generateFromDevices()` which appends to `_notifications` without any pruning or TTL. + +**Impact:** +- Initial notifications accumulate +- Same devices generate duplicate notifications on each cycle +- No expiry or max-size enforcement +- After ~1000+ refresh cycles, 2,169 notifications are held in memory + +--- + +## ISSUE #2: STATE-CHANGE NOT USED (ROOT CAUSE OF DUPES) + +**File:** `lib/core/services/notification_generation_service.dart` +**Lines:** 18-25, 35-60, 74-143 + +**Problem:** +```dart +final Map _previousDeviceStates = {}; +final List _notifications = []; +// ... +final previousStatus = _previousDeviceStates[device.id]; +// previousStatus is never used to gate notifications +final deviceNotifications = _generateDeviceNotifications(device, now, previousStatus); +newNotifications.addAll(deviceNotifications); +``` + +**Impact:** +- Notifications are generated on every refresh, not just on state transitions. +- If a user marks a notification as read, a new one is generated on the next cycle. +- This turns the refresh loop into a notification factory. + +--- + +## ISSUE #3: STREAM CONTROLLERS NOT DISPOSED (POTENTIAL) + +**File:** `lib/core/services/notification_generation_service.dart` +**Lines:** 12-13, 198-200 + +**Problem:** +```dart +// Lines 12-13: Broadcast stream controllers +final _notificationController = StreamController.broadcast(); +final _notificationListController = StreamController>.broadcast(); + +// Line 198-200: dispose() method exists but may not be called +void dispose() { + _notificationController.close(); + _notificationListController.close(); +} +``` + +**Issue:** The `dispose()` method exists but the provider in +`lib/core/providers/core_providers.dart` does not call `ref.onDispose()`. +The service is a singleton for the app lifetime, so this is not the root +cause of growth, but it is still a lifecycle leak during sign-out/scope changes. + +--- + +## ISSUE #4: WEBSOCKET MESSAGE STREAMING (NOT THE OOM ROOT) + +**File:** `lib/core/services/websocket_service.dart` +**Lines:** 73-74, 231-237, 351 + +**Problem:** +```dart +// Lines 73-74: Broadcast stream controllers +final _stateController = StreamController.broadcast(); +final _messageController = StreamController.broadcast(); + +// Lines 231-237: Every message stored in memory +_messageController.add( + SocketMessage( + type: type, + payload: payload, + headers: headers, + raw: decoded, // Raw decoded message stored + ), +); + +// Line 351: Global variable holding last message +SocketMessage? _lastMessage; +``` + +**Reality Check:** +- Only the **last** message is retained (`_lastMessage`). +- Messages are streamed, not stored in a growing list. +- This is not an unbounded memory growth source on its own. + +--- + +## ISSUE #5: BACKGROUND REFRESH DRIVES THE LEAK (REAL) + +**File:** `lib/core/services/background_refresh_service.dart` +**Lines:** 30-32, 42-52, 154-158 + +**Problem:** +```dart +// Lines 42-52: Continuous background refresh loop +void startBackgroundRefresh() { + Future.delayed(_initialDelay, _performRefresh); + + _refreshTimer?.cancel(); + _refreshTimer = Timer.periodic(_refreshInterval, (_) { + _performRefresh(); + }); +} +``` + +**Data Flow Problem:** +1. Started in `main.dart` (line 72) with `ref.read(backgroundRefreshServiceProvider).startBackgroundRefresh()` +2. Runs every 2 minutes +3. Each cycle calls `generateFromDevices()` which adds to the unbounded `_notifications` list +4. After 1000+ cycles: 2,169 notifications accumulated +5. No mechanism to stop or reset + +--- + +## ISSUE #6: DERIVED PROVIDERS (CPU COST, NOT LEAK) + +**File:** `lib/features/notifications/presentation/providers/device_notification_provider.dart` +**Lines:** 24-244 + +**Problem:** Multiple derived providers watch `deviceNotificationsNotifierProvider`: +- `unreadDeviceNotifications` - filters entire list +- `unreadDeviceNotificationCount` - counts entire list +- `notificationsByPriority` - filters entire list +- `deviceNotificationsByType` - filters entire list +- `urgentNotifications` - filters entire list +- `mediumNotifications` - filters entire list +- `lowNotifications` - filters entire list +- `deviceNotifications` - filters by device ID +- `roomNotifications` - filters by location + +**Reality Check:** These lists are short‑lived and GC’d. This is more of a +CPU churn issue than a sustained memory leak. + +--- + +## ROOT CAUSE SUMMARY (REVISED) + +The OOM crash is caused by a **CASCADING MEMORY LEAK**: + +1. **Background refresh runs every 2 minutes** -> calls `generateFromDevices()` +2. **State transitions are ignored** -> duplicate notifications get created +3. **Unbounded list grows** -> `_notifications.addAll()` has NO max size or TTL +4. **No cleanup on sign‑out** -> notification store persists through sessions + +**Reality Check:** 2,169 notifications is likely only a few MB. This alone may +not explain a Scudo OOM. There may be additional memory pressure elsewhere, +but this list growth is still a real, fixable issue. + +--- + +## FILES WITH ISSUES SUMMARY + +| File | Lines | Issue | +|------|-------|-------| +| `lib/core/services/notification_generation_service.dart` | 22, 42, 159 | Unbounded list growth, no cleanup | +| `lib/features/notifications/presentation/providers/notifications_domain_provider.dart` | 12 | `keepAlive: true` prevents disposal | +| `lib/core/providers/core_providers.dart` | 98-101 | Service provider no lifecycle management | +| `lib/core/services/websocket_service.dart` | 73-74, 231-237, 351 | Unbounded message streaming | +| `lib/core/services/background_refresh_service.dart` | 30-32, 42-52 | Continuous refresh driving accumulation | +| `lib/features/notifications/presentation/providers/device_notification_provider.dart` | 24-244 | Multiple providers creating filtered copies | +| `lib/core/providers/websocket_providers.dart` | 26-31, 42-61 | Stream listeners not cleaned up | +| `lib/main.dart` | 72 | Background refresh started without cleanup | + +--- + +## RECOMMENDED FIXES (IMPROVED + ACTIONABLE) + +### Priority 1 - Critical (Fix immediately) + +1. **Generate notifications only on state transitions** + - File: `lib/core/services/notification_generation_service.dart` + - Use `previousStatus` to gate offline/online transitions. + - For note/images, detect transitions (empty -> non‑empty, none -> exists) + to avoid re‑issuing the same notification every refresh. + +2. **Bound the list with a retention policy** + - Keep the most recent N (e.g., 500) and/or prune anything older than 24–72h. + - Apply pruning before emitting updated lists. + +3. **Deduplicate by key** + - Key by `(deviceId, type, status)` and only create a new notification if + the last one is resolved/cleared or the state transitions again. + +### Priority 2 - Important + +4. **Add lifecycle cleanup** + - Add `ref.onDispose()` for `NotificationGenerationService` + (and background refresh) to close streams and stop timers. + - On sign‑out: clear notifications and reset `_previousDeviceStates`. + +5. **Reduce background refresh cadence when idle** + - Increase interval or disable when app is backgrounded. + +6. **Avoid full list copies on every update** + - Emit deltas (new notifications) and let UI append, or debounce list updates. + +### Priority 3 - Nice to have + +7. **Use pagination/lazy loading** for notifications + - Only load visible notifications + - Virtualize long lists + +8. **Instrument memory and notification counts** + - Log size of `_notifications` and refresh cycles + - Add guards to warn when counts exceed thresholds + +9. **Add explicit tests** + - Unit tests for transition gating and TTL pruning + - Integration test to ensure refresh cycles do not grow without bound From 554f16fa6e4fcda8e852c6a1e43ebcc09c9f84ad Mon Sep 17 00:00:00 2001 From: Zachary Wilhite Date: Tue, 6 Jan 2026 13:38:04 -0800 Subject: [PATCH 6/6] Adds websocket login --- lib/core/navigation/app_router.dart | 11 +- lib/core/providers/repository_providers.dart | 4 + .../services/background_refresh_service.dart | 21 + .../services/websocket_channel_factory.dart | 13 + .../websocket_channel_factory_io.dart | 9 + .../websocket_channel_factory_web.dart | 8 + lib/core/services/websocket_service.dart | 16 +- .../presentation/providers/auth_notifier.dart | 116 +- .../presentation/screens/auth_screen.dart | 88 +- .../data/repositories/device_repository.dart | 31 + .../providers/devices_provider.dart | 9 + .../providers/dashboard_provider.dart | 7 +- .../presentation/screens/settings_screen.dart | 20 +- log.txt | 3012 +---------------- 14 files changed, 413 insertions(+), 2952 deletions(-) create mode 100644 lib/core/services/websocket_channel_factory.dart create mode 100644 lib/core/services/websocket_channel_factory_io.dart create mode 100644 lib/core/services/websocket_channel_factory_web.dart diff --git a/lib/core/navigation/app_router.dart b/lib/core/navigation/app_router.dart index 7ef3e3e..c14649b 100644 --- a/lib/core/navigation/app_router.dart +++ b/lib/core/navigation/app_router.dart @@ -35,7 +35,16 @@ class AppRouter { path: '/auth', builder: (context, state) => const AuthScreen(), ), - + + // Auth scanner (outside of shell to maintain context with auth screen) + GoRoute( + path: '/auth-scanner', + builder: (context, state) { + final mode = state.uri.queryParameters['mode']; + return ScannerScreen(mode: mode); + }, + ), + // Debug screen (outside of shell for direct access) GoRoute( path: '/debug', diff --git a/lib/core/providers/repository_providers.dart b/lib/core/providers/repository_providers.dart index 89c0a37..582624f 100644 --- a/lib/core/providers/repository_providers.dart +++ b/lib/core/providers/repository_providers.dart @@ -99,10 +99,12 @@ final authRepositoryProvider = Provider((ref) { final deviceRepositoryProvider = Provider((ref) { final dataSource = ref.watch(deviceDataSourceProvider); final localDataSource = ref.watch(deviceLocalDataSourceProvider); + final storageService = ref.watch(storageServiceProvider); return device_impl.DeviceRepositoryImpl( dataSource: dataSource, localDataSource: localDataSource, + storageService: storageService, ); }); @@ -164,11 +166,13 @@ final backgroundRefreshServiceProvider = Provider(( final deviceLocalDataSource = ref.watch(deviceLocalDataSourceProvider); final roomRepository = ref.watch(roomRepositoryProvider); final notificationService = ref.watch(notificationGenerationServiceProvider); + final storageService = ref.watch(storageServiceProvider); return BackgroundRefreshService( deviceRemoteDataSource: deviceRemoteDataSource, deviceLocalDataSource: deviceLocalDataSource, roomRepository: roomRepository, notificationGenerationService: notificationService, + storageService: storageService, ); }); diff --git a/lib/core/services/background_refresh_service.dart b/lib/core/services/background_refresh_service.dart index 3f5f0d7..6cb4db1 100644 --- a/lib/core/services/background_refresh_service.dart +++ b/lib/core/services/background_refresh_service.dart @@ -2,6 +2,7 @@ import 'dart:async'; import 'package:logger/logger.dart'; import 'package:rgnets_fdk/core/services/notification_generation_service.dart'; +import 'package:rgnets_fdk/core/services/storage_service.dart'; import 'package:rgnets_fdk/features/devices/data/datasources/device_data_source.dart'; import 'package:rgnets_fdk/features/devices/data/datasources/device_local_data_source.dart'; import 'package:rgnets_fdk/features/devices/data/models/device_model.dart'; @@ -15,6 +16,7 @@ class BackgroundRefreshService { required this.deviceLocalDataSource, required this.roomRepository, required this.notificationGenerationService, + required this.storageService, }); static final _logger = Logger(); @@ -23,6 +25,7 @@ class BackgroundRefreshService { final DeviceLocalDataSource deviceLocalDataSource; final RoomRepository roomRepository; final NotificationGenerationService notificationGenerationService; + final StorageService storageService; Timer? _refreshTimer; bool _isRefreshing = false; @@ -41,6 +44,10 @@ class BackgroundRefreshService { /// Start background refresh void startBackgroundRefresh() { _logger.d('BackgroundRefreshService: Starting background refresh'); + if (!_isAuthenticated()) { + _logger.w('BackgroundRefreshService: Skipping start (not authenticated)'); + return; + } // Schedule initial refresh after a delay Future.delayed(_initialDelay, _performRefresh); @@ -61,6 +68,10 @@ class BackgroundRefreshService { /// Perform refresh in background Future _performRefresh() async { + if (!_isAuthenticated()) { + _logger.d('BackgroundRefreshService: Skipping refresh (not authenticated)'); + return; + } if (_isRefreshing) { _logger.d('BackgroundRefreshService: Refresh already in progress, skipping'); return; @@ -82,6 +93,10 @@ class BackgroundRefreshService { /// Refresh devices in background Future _refreshDevices() async { try { + if (!_isAuthenticated()) { + _logger.d('BackgroundRefreshService: Skipping device refresh (not authenticated)'); + return; + } _deviceRefreshController.add(RefreshStatus.refreshing); // Fetch devices in background using compute for heavy processing @@ -116,6 +131,10 @@ class BackgroundRefreshService { /// Refresh rooms in background Future _refreshRooms() async { try { + if (!_isAuthenticated()) { + _logger.d('BackgroundRefreshService: Skipping room refresh (not authenticated)'); + return; + } _roomRefreshController.add(RefreshStatus.refreshing); final stopwatch = Stopwatch()..start(); @@ -156,6 +175,8 @@ class BackgroundRefreshService { _deviceRefreshController.close(); _roomRefreshController.close(); } + + bool _isAuthenticated() => storageService.isAuthenticated; } /// Status of background refresh diff --git a/lib/core/services/websocket_channel_factory.dart b/lib/core/services/websocket_channel_factory.dart new file mode 100644 index 0000000..004a2fd --- /dev/null +++ b/lib/core/services/websocket_channel_factory.dart @@ -0,0 +1,13 @@ +import 'package:web_socket_channel/web_socket_channel.dart'; + +import 'websocket_channel_factory_io.dart' + if (dart.library.io) 'websocket_channel_factory_io.dart' + if (dart.library.html) 'websocket_channel_factory_web.dart'; + +/// Connects to a WebSocket endpoint with optional headers. +WebSocketChannel connectWebSocket( + Uri uri, { + Map? headers, +}) { + return createWebSocketChannel(uri, headers: headers); +} diff --git a/lib/core/services/websocket_channel_factory_io.dart b/lib/core/services/websocket_channel_factory_io.dart new file mode 100644 index 0000000..4abca07 --- /dev/null +++ b/lib/core/services/websocket_channel_factory_io.dart @@ -0,0 +1,9 @@ +import 'package:web_socket_channel/io.dart'; +import 'package:web_socket_channel/web_socket_channel.dart'; + +WebSocketChannel createWebSocketChannel( + Uri uri, { + Map? headers, +}) { + return IOWebSocketChannel.connect(uri, headers: headers); +} diff --git a/lib/core/services/websocket_channel_factory_web.dart b/lib/core/services/websocket_channel_factory_web.dart new file mode 100644 index 0000000..cc7a301 --- /dev/null +++ b/lib/core/services/websocket_channel_factory_web.dart @@ -0,0 +1,8 @@ +import 'package:web_socket_channel/web_socket_channel.dart'; + +WebSocketChannel createWebSocketChannel( + Uri uri, { + Map? headers, +}) { + return WebSocketChannel.connect(uri); +} diff --git a/lib/core/services/websocket_service.dart b/lib/core/services/websocket_service.dart index 3ad8e86..3c86648 100644 --- a/lib/core/services/websocket_service.dart +++ b/lib/core/services/websocket_service.dart @@ -6,6 +6,8 @@ import 'package:flutter/foundation.dart'; import 'package:logger/logger.dart'; import 'package:web_socket_channel/web_socket_channel.dart'; +import 'package:rgnets_fdk/core/services/websocket_channel_factory.dart'; + /// Connection states emitted by [WebSocketService]. enum SocketConnectionState { disconnected, connecting, connected, reconnecting } @@ -32,10 +34,15 @@ class WebSocketConfig { /// Parameters used when establishing a socket connection. class WebSocketConnectionParams { - const WebSocketConnectionParams({required this.uri, this.handshakeMessage}); + const WebSocketConnectionParams({ + required this.uri, + this.handshakeMessage, + this.headers, + }); final Uri uri; final Map? handshakeMessage; + final Map? headers; } /// Envelope for socket messages. @@ -53,7 +60,8 @@ class SocketMessage { final Map? raw; } -typedef WebSocketChannelFactory = WebSocketChannel Function(Uri uri); +typedef WebSocketChannelFactory = + WebSocketChannel Function(Uri uri, {Map? headers}); /// Service responsible for managing WebSocket connections, reconnection, /// heartbeat, and message dispatch. @@ -64,7 +72,7 @@ class WebSocketService { WebSocketChannelFactory? channelFactory, }) : _config = config, _logger = logger ?? Logger(), - _channelFactory = channelFactory ?? WebSocketChannel.connect; + _channelFactory = channelFactory ?? connectWebSocket; final WebSocketConfig _config; final Logger _logger; @@ -151,7 +159,7 @@ class WebSocketService { ); try { _logger.i('WebSocketService: Connecting to ${params.uri}'); - final channel = _channelFactory(params.uri); + final channel = _channelFactory(params.uri, headers: params.headers); _channel = channel; _subscription = channel.stream.listen( diff --git a/lib/features/auth/presentation/providers/auth_notifier.dart b/lib/features/auth/presentation/providers/auth_notifier.dart index f8734ff..e8aa238 100644 --- a/lib/features/auth/presentation/providers/auth_notifier.dart +++ b/lib/features/auth/presentation/providers/auth_notifier.dart @@ -7,9 +7,19 @@ import 'package:logger/logger.dart'; import 'package:rgnets_fdk/core/config/environment.dart'; import 'package:rgnets_fdk/core/providers/core_providers.dart'; import 'package:rgnets_fdk/core/providers/repository_providers.dart'; +import 'package:rgnets_fdk/core/services/adaptive_refresh_manager.dart'; +import 'package:rgnets_fdk/core/services/cache_manager.dart'; import 'package:rgnets_fdk/core/providers/use_case_providers.dart'; import 'package:rgnets_fdk/core/providers/websocket_providers.dart'; import 'package:rgnets_fdk/core/services/websocket_service.dart'; +import 'package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart' + as devices_providers; +import 'package:rgnets_fdk/features/home/presentation/providers/dashboard_provider.dart' + as dashboard_providers; +import 'package:rgnets_fdk/features/notifications/presentation/providers/device_notification_provider.dart' + as device_notifications; +import 'package:rgnets_fdk/features/notifications/presentation/providers/notifications_domain_provider.dart' + as notifications_domain; import 'package:rgnets_fdk/features/auth/data/models/auth_attempt.dart'; import 'package:rgnets_fdk/features/auth/data/models/user_model.dart'; import 'package:rgnets_fdk/features/auth/domain/entities/auth_status.dart'; @@ -201,20 +211,30 @@ class Auth extends _$Auth { _logger.d('AUTH_NOTIFIER: Setting state to unauthenticated'); state = const AsyncValue.data(AuthStatus.unauthenticated()); - // Disconnect WebSocket first (if enabled) to stop message processing + try { + await ref + .read(storageServiceProvider) + .setAuthenticated(value: false); + } on Exception catch (e) { + _logger.w('AUTH_NOTIFIER: Failed to mark unauthenticated: $e'); + } + + await _stopBackgroundServices(); + _invalidateDataProviders(); + + // Disconnect WebSocket (if enabled) to stop message processing if (EnvironmentConfig.useWebSockets) { _logger.d('AUTH_NOTIFIER: Disconnecting WebSocket...'); - try { - final webSocketService = ref.read(webSocketServiceProvider); - // Don't await - just fire and forget - unawaited( - webSocketService - .disconnect(code: 1000, reason: 'User signed out') - .timeout(const Duration(seconds: 2)), - ); - } on Exception catch (e) { - _logger.w('AUTH_NOTIFIER: WebSocket disconnect error: $e'); - } + final webSocketService = ref.read(webSocketServiceProvider); + // Fire and forget with proper async error handling + unawaited( + webSocketService + .disconnect(code: 1000, reason: 'User signed out') + .timeout(const Duration(seconds: 2)) + .catchError((Object e) { + _logger.w('AUTH_NOTIFIER: WebSocket disconnect error: $e'); + }), + ); } // Clear storage in background with timeout @@ -228,6 +248,31 @@ class Auth extends _$Auth { } } + Future _stopBackgroundServices() async { + try { + _logger.d('AUTH_NOTIFIER: Stopping background refresh services'); + ref.read(backgroundRefreshServiceProvider).stopBackgroundRefresh(); + ref.read(adaptiveRefreshManagerProvider).stopRefresh(); + ref.read(cacheManagerProvider).clearAll(); + } on Exception catch (e) { + _logger.w('AUTH_NOTIFIER: Failed stopping background services: $e'); + } + } + + void _invalidateDataProviders() { + try { + _logger.d('AUTH_NOTIFIER: Invalidating data providers after sign out'); + ref.invalidate(devices_providers.devicesNotifierProvider); + ref.invalidate(device_notifications.deviceNotificationsNotifierProvider); + ref.invalidate( + notifications_domain.notificationsDomainNotifierProvider, + ); + ref.invalidate(dashboard_providers.dashboardStatsProvider); + } on Exception catch (e) { + _logger.w('AUTH_NOTIFIER: Failed to invalidate data providers: $e'); + } + } + Future _clearStorageWithTimeout() async { try { final storage = ref.read(storageServiceProvider); @@ -270,6 +315,7 @@ class Auth extends _$Auth { fqdn: fqdn, apiKey: apiKey, ); + final headers = _buildAuthHeaders(apiKey); if (service.isConnected) { await service.disconnect(code: 4000, reason: 'Re-authenticating'); @@ -283,13 +329,16 @@ class Auth extends _$Auth { final completer = Completer<_ActionCableAuthResult>(); final subscription = service.messages.listen((message) { + _logger.d('AUTH_NOTIFIER: πŸ“© WebSocket message received: type=${message.type}, payload=${message.payload}'); if (message.type == 'confirm_subscription' && _identifierMatches(message, identifier)) { + _logger.i('AUTH_NOTIFIER: βœ… Subscription confirmed!'); if (!completer.isCompleted) { completer.complete(const _ActionCableAuthResult.success()); } } else if (message.type == 'reject_subscription' && _identifierMatches(message, identifier)) { + _logger.e('AUTH_NOTIFIER: ❌ Subscription REJECTED by server'); if (!completer.isCompleted) { completer.complete( const _ActionCableAuthResult.failure( @@ -298,10 +347,11 @@ class Auth extends _$Auth { ); } } else if (message.type == 'disconnect') { + final reason = + message.payload['reason'] as String? ?? + message.payload['message'] as String?; + _logger.e('AUTH_NOTIFIER: ❌ Server sent disconnect: $reason'); if (!completer.isCompleted) { - final reason = - message.payload['reason'] as String? ?? - message.payload['message'] as String?; completer.complete( _ActionCableAuthResult.failure( reason ?? 'Connection closed by server', @@ -311,9 +361,11 @@ class Auth extends _$Auth { } }); - final stateSubscription = service.connectionState.listen((state) { - if (state == SocketConnectionState.disconnected && + final stateSubscription = service.connectionState.listen((connState) { + _logger.d('AUTH_NOTIFIER: πŸ”Œ WebSocket connection state changed: $connState'); + if (connState == SocketConnectionState.disconnected && !completer.isCompleted) { + _logger.e('AUTH_NOTIFIER: ❌ Connection closed before subscription confirmed'); completer.complete( const _ActionCableAuthResult.failure( 'Connection closed before subscription confirmed', @@ -324,17 +376,26 @@ class Auth extends _$Auth { _logger ..i('AUTH_NOTIFIER: Initiating WebSocket handshake') - ..d('AUTH_NOTIFIER: WebSocket URI: $uri'); + ..d('AUTH_NOTIFIER: WebSocket URI: $uri') + ..d('AUTH_NOTIFIER: Subscription identifier: $identifier'); try { - await service.connect(WebSocketConnectionParams(uri: uri)); + _logger.d('AUTH_NOTIFIER: Calling service.connect()...'); + await service.connect( + WebSocketConnectionParams(uri: uri, headers: headers), + ); + _logger.d('AUTH_NOTIFIER: WebSocket connected, sending subscription...'); service.send(subscriptionPayload); + _logger.d('AUTH_NOTIFIER: Subscription sent, waiting for confirmation (15s timeout)...'); final result = await completer.future.timeout( const Duration(seconds: 15), - onTimeout: () => const _ActionCableAuthResult.failure( - 'WebSocket handshake timed out', - ), + onTimeout: () { + _logger.e('AUTH_NOTIFIER: ⏱️ WebSocket handshake TIMED OUT after 15 seconds'); + return const _ActionCableAuthResult.failure( + 'WebSocket handshake timed out', + ); + }, ); if (!result.success) { @@ -460,13 +521,22 @@ Uri _buildActionCableUri({ ); final queryParameters = Map.from(uri.queryParameters); - queryParameters['api_key'] = apiKey; + if (apiKey.isNotEmpty) { + queryParameters['api_key'] = apiKey; + } return uri.replace( queryParameters: queryParameters.isEmpty ? null : queryParameters, ); } +Map _buildAuthHeaders(String apiKey) { + if (apiKey.isEmpty) { + return const {}; + } + return {'Authorization': 'Bearer $apiKey'}; +} + bool _identifierMatches(SocketMessage message, String identifier) { final headerIdentifier = message.headers?['identifier']; if (headerIdentifier is String && headerIdentifier.isNotEmpty) { diff --git a/lib/features/auth/presentation/screens/auth_screen.dart b/lib/features/auth/presentation/screens/auth_screen.dart index c5d6a69..f03e5d4 100644 --- a/lib/features/auth/presentation/screens/auth_screen.dart +++ b/lib/features/auth/presentation/screens/auth_screen.dart @@ -1,7 +1,10 @@ +import 'dart:async'; + import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:go_router/go_router.dart'; import 'package:rgnets_fdk/core/config/environment.dart'; +import 'package:rgnets_fdk/core/providers/core_providers.dart'; import 'package:rgnets_fdk/core/widgets/widgets.dart'; import 'package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart'; import 'package:rgnets_fdk/features/auth/presentation/widgets/credential_approval_sheet.dart'; @@ -67,9 +70,9 @@ class _AuthScreenState extends ConsumerState { height: 56, child: ElevatedButton.icon( onPressed: () async { - // Navigate to scanner and wait for result + // Navigate to auth-scanner (outside shell) and wait for result final result = await context.push>( - '/scanner?mode=auth', + '/auth-scanner?mode=auth', ); if (result != null && context.mounted) { // Process scanned credentials @@ -158,11 +161,17 @@ class _AuthScreenState extends ConsumerState { Future _processScannedCredentials( Map credentials, ) async { + final logger = ref.read(loggerProvider); + logger.i('AUTH_SCREEN: _processScannedCredentials called'); + logger.d('AUTH_SCREEN: credentials = $credentials'); + if (!mounted) { + logger.w('AUTH_SCREEN: Widget not mounted, returning early'); return; } final navigator = Navigator.of(context); + final rootNavigator = Navigator.of(context, rootNavigator: true); final scaffoldMessenger = ScaffoldMessenger.of(context); final goRouter = GoRouter.of(context); @@ -187,10 +196,14 @@ class _AuthScreenState extends ConsumerState { ? siteNameRaw.trim() : null; + logger.d('AUTH_SCREEN: Parsed - fqdn=$fqdn, login=$login, apiKey=${apiKey != null ? "${apiKey.substring(0, 4)}..." : "null"}'); + if (fqdn == null || login == null || apiKey == null) { + logger.e('AUTH_SCREEN: Invalid credential payload - missing required fields'); throw Exception('Invalid credential payload'); } + logger.i('AUTH_SCREEN: Showing credential approval sheet...'); final approved = await _showCredentialApprovalSheet( fqdn: fqdn, login: login, @@ -199,11 +212,14 @@ class _AuthScreenState extends ConsumerState { issuedAt: issuedAt, signature: signature, ); + logger.i('AUTH_SCREEN: Approval sheet returned: $approved'); if (!approved) { if (!mounted) { + logger.w('AUTH_SCREEN: Widget not mounted after approval sheet'); return; } + logger.w('AUTH_SCREEN: Approval was cancelled or returned false'); scaffoldMessenger.showSnackBar( const SnackBar( content: Text('Approval cancelled. You can rescan or edit entries.'), @@ -216,10 +232,13 @@ class _AuthScreenState extends ConsumerState { return; } - await showDialog( - context: context, - barrierDismissible: false, - builder: (context) => const Center(child: LoadingIndicator()), + loadingShown = true; + unawaited( + showDialog( + context: context, + barrierDismissible: false, + builder: (context) => const Center(child: LoadingIndicator()), + ), ); loadingShown = true; @@ -246,8 +265,8 @@ class _AuthScreenState extends ConsumerState { return; } - if (loadingShown && navigator.canPop()) { - navigator.pop(); + if (loadingShown && rootNavigator.canPop()) { + rootNavigator.pop(); loadingShown = false; } @@ -284,8 +303,8 @@ class _AuthScreenState extends ConsumerState { ); } on Exception catch (e) { if (mounted) { - if (loadingShown && navigator.canPop()) { - navigator.pop(); + if (loadingShown && rootNavigator.canPop()) { + rootNavigator.pop(); loadingShown = false; } scaffoldMessenger.showSnackBar( @@ -306,21 +325,40 @@ class _AuthScreenState extends ConsumerState { DateTime? issuedAt, String? signature, }) async { - final result = await showModalBottomSheet( - context: context, - isScrollControlled: true, - isDismissible: false, - enableDrag: false, - builder: (_) => CredentialApprovalSheet( - fqdn: fqdn, - login: login, - apiKey: apiKey, - siteName: siteName, - issuedAt: issuedAt, - signature: signature, - ), - ); - return result ?? false; + final logger = ref.read(loggerProvider); + logger.d('AUTH_SCREEN: _showCredentialApprovalSheet called'); + logger.d('AUTH_SCREEN: context.mounted = $mounted'); + + if (!mounted) { + logger.e('AUTH_SCREEN: Cannot show sheet - widget not mounted'); + return false; + } + + logger.i('AUTH_SCREEN: Calling showModalBottomSheet...'); + try { + final result = await showModalBottomSheet( + context: context, + isScrollControlled: true, + isDismissible: false, + enableDrag: false, + builder: (sheetContext) { + logger.d('AUTH_SCREEN: BottomSheet builder executing'); + return CredentialApprovalSheet( + fqdn: fqdn, + login: login, + apiKey: apiKey, + siteName: siteName, + issuedAt: issuedAt, + signature: signature, + ); + }, + ); + logger.i('AUTH_SCREEN: showModalBottomSheet returned: $result'); + return result ?? false; + } catch (e, stack) { + logger.e('AUTH_SCREEN: showModalBottomSheet threw error: $e\n$stack'); + return false; + } } Future _showManualEntryDialog() async { diff --git a/lib/features/devices/data/repositories/device_repository.dart b/lib/features/devices/data/repositories/device_repository.dart index d84d1e7..e1ddbdb 100644 --- a/lib/features/devices/data/repositories/device_repository.dart +++ b/lib/features/devices/data/repositories/device_repository.dart @@ -7,6 +7,7 @@ import 'package:rgnets_fdk/core/config/environment.dart'; import 'package:rgnets_fdk/core/errors/failures.dart'; import 'package:rgnets_fdk/core/services/pagination_service.dart'; import 'package:rgnets_fdk/core/services/performance_monitor_service.dart'; +import 'package:rgnets_fdk/core/services/storage_service.dart'; import 'package:rgnets_fdk/features/devices/data/datasources/device_data_source.dart'; import 'package:rgnets_fdk/features/devices/data/datasources/device_local_data_source.dart'; import 'package:rgnets_fdk/features/devices/data/models/device_model.dart'; @@ -17,6 +18,7 @@ class DeviceRepositoryImpl implements DeviceRepository { DeviceRepositoryImpl({ required this.dataSource, required this.localDataSource, + required this.storageService, }) { _logger.i('DEVICE_REPOSITORY: Constructor called'); @@ -28,6 +30,7 @@ class DeviceRepositoryImpl implements DeviceRepository { final DeviceDataSource dataSource; final DeviceLocalDataSource localDataSource; + final StorageService storageService; // Pagination service for efficient loading @@ -78,6 +81,11 @@ class DeviceRepositoryImpl implements DeviceRepository { try { _logger.i('πŸ” DEVICE_REPOSITORY: getDevices() called at ${DateTime.now().toIso8601String()}'); + if (!_isAuthenticated()) { + _logger.w('DeviceRepositoryImpl: Skipping getDevices (not authenticated)'); + return const Right([]); + } + if (!EnvironmentConfig.enableRestFallback) { _logger ..w('DeviceRepositoryImpl: REST fallback disabled; skipping remote fetch') @@ -153,6 +161,10 @@ class DeviceRepositoryImpl implements DeviceRepository { /// Refresh data in background without blocking UI Future _refreshInBackground() async { try { + if (!_isAuthenticated()) { + _logger.d('DeviceRepositoryImpl: Skipping background refresh (not authenticated)'); + return; + } if (!EnvironmentConfig.enableRestFallback) { _logger.d( 'DeviceRepositoryImpl: Skipping background refresh (REST fallback disabled)', @@ -179,6 +191,9 @@ class DeviceRepositoryImpl implements DeviceRepository { List? fields, }) async { try { + if (!_isAuthenticated()) { + return Left(DeviceFailure(message: 'Not authenticated')); + } // Use data source final deviceModel = await dataSource.getDevice(id, fields: fields); await localDataSource.cacheDevice(deviceModel); @@ -200,6 +215,9 @@ class DeviceRepositoryImpl implements DeviceRepository { @override Future>> getDevicesByRoom(String roomId) async { try { + if (!_isAuthenticated()) { + return const Right([]); + } // Use data source final deviceModels = await dataSource.getDevicesByRoom(roomId); final devices = deviceModels.map((model) => model.toEntity()).toList(); @@ -212,6 +230,9 @@ class DeviceRepositoryImpl implements DeviceRepository { @override Future>> searchDevices(String query) async { try { + if (!_isAuthenticated()) { + return const Right([]); + } final deviceModels = await dataSource.searchDevices(query); final devices = deviceModels.map((model) => model.toEntity()).toList(); return Right(devices); @@ -223,6 +244,9 @@ class DeviceRepositoryImpl implements DeviceRepository { @override Future> updateDevice(Device device) async { try { + if (!_isAuthenticated()) { + return Left(DeviceFailure(message: 'Not authenticated')); + } final deviceModel = DeviceModel( id: device.id, name: device.name, @@ -287,4 +311,11 @@ class DeviceRepositoryImpl implements DeviceRepository { _paginationService.dispose(); _devicesStreamController.close(); } + + bool _isAuthenticated() { + if (EnvironmentConfig.isDevelopment) { + return true; + } + return storageService.isAuthenticated; + } } diff --git a/lib/features/devices/presentation/providers/devices_provider.dart b/lib/features/devices/presentation/providers/devices_provider.dart index a3e751f..818e032 100644 --- a/lib/features/devices/presentation/providers/devices_provider.dart +++ b/lib/features/devices/presentation/providers/devices_provider.dart @@ -1,5 +1,6 @@ import 'package:rgnets_fdk/core/config/logger_config.dart'; import 'package:rgnets_fdk/core/constants/device_field_sets.dart'; +import 'package:rgnets_fdk/core/providers/core_providers.dart'; import 'package:rgnets_fdk/core/providers/use_case_providers.dart'; import 'package:rgnets_fdk/core/services/adaptive_refresh_manager.dart'; import 'package:rgnets_fdk/core/services/cache_manager.dart'; @@ -23,11 +24,19 @@ class DevicesNotifier extends _$DevicesNotifier { // Initialize managers _refreshManager = ref.read(adaptiveRefreshManagerProvider); _cacheManager = ref.read(cacheManagerProvider); + final storage = ref.read(storageServiceProvider); if (LoggerConfig.isVerboseLoggingEnabled) { _logger.i('DevicesProvider: Loading devices'); } + if (!storage.isAuthenticated) { + if (LoggerConfig.isVerboseLoggingEnabled) { + _logger.i('DevicesProvider: Skipping load (not authenticated)'); + } + return []; + } + // Start sequential background refresh _startBackgroundRefresh(); diff --git a/lib/features/home/presentation/providers/dashboard_provider.dart b/lib/features/home/presentation/providers/dashboard_provider.dart index dd35dd5..aff52a1 100644 --- a/lib/features/home/presentation/providers/dashboard_provider.dart +++ b/lib/features/home/presentation/providers/dashboard_provider.dart @@ -18,9 +18,12 @@ class DashboardStats extends _$DashboardStats { // Initialize services from providers _backgroundRefreshService = ref.watch(backgroundRefreshServiceProvider); _performanceMonitor = ref.watch(performanceMonitorProvider); + final storage = ref.watch(storageServiceProvider); // Start background refresh service - _backgroundRefreshService.startBackgroundRefresh(); + if (storage.isAuthenticated || EnvironmentConfig.isDevelopment) { + _backgroundRefreshService.startBackgroundRefresh(); + } // Track dashboard loading performance return _performanceMonitor.trackFuture( @@ -75,4 +78,4 @@ class DashboardStats extends _$DashboardStats { 'performance_report': _performanceMonitor.generateReport(), }; } -} \ No newline at end of file +} diff --git a/lib/features/settings/presentation/screens/settings_screen.dart b/lib/features/settings/presentation/screens/settings_screen.dart index 6d81f07..9793f03 100644 --- a/lib/features/settings/presentation/screens/settings_screen.dart +++ b/lib/features/settings/presentation/screens/settings_screen.dart @@ -1,3 +1,5 @@ +import 'dart:async'; + import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:go_router/go_router.dart'; @@ -553,25 +555,29 @@ class SettingsScreen extends ConsumerWidget { } void _showSignOutDialog(BuildContext context, WidgetRef ref) { + // Capture router before showing dialog to avoid using stale context + final router = GoRouter.of(context); + showDialog( context: context, - builder: (context) => AlertDialog( + builder: (dialogContext) => AlertDialog( title: const Text('Sign Out'), content: const Text( 'Are you sure you want to sign out? You will need to scan the QR code again to reconnect.', ), actions: [ TextButton( - onPressed: () => Navigator.of(context).pop(), + onPressed: () => Navigator.of(dialogContext).pop(), child: const Text('Cancel'), ), ElevatedButton( onPressed: () async { - Navigator.of(context).pop(); - await ref.read(authProvider.notifier).signOut(); - if (context.mounted) { - context.go('/auth'); - } + // Pop dialog first + Navigator.of(dialogContext).pop(); + // Navigate immediately using captured router (before provider invalidation) + router.go('/auth'); + // Then sign out (this can happen in background) + unawaited(ref.read(authProvider.notifier).signOut()); }, style: ElevatedButton.styleFrom(backgroundColor: Colors.red), child: const Text('Sign Out'), diff --git a/log.txt b/log.txt index e294765..9f4f174 100644 --- a/log.txt +++ b/log.txt @@ -1,43 +1,43 @@ -Launching lib/main.dart on Pixel Fold in debug mode... -Running Gradle task 'assembleDebug'... 9.9s +Launching lib/main_production.dart on Pixel Fold in debug mode... +Running Gradle task 'assembleDebug'... 2,615ms βœ“ Built build/app/outputs/flutter-apk/app-debug.apk -Installing build/app/outputs/flutter-apk/app-debug.apk... 5.1s -D/FlutterJNI( 9629): Beginning load of flutter... -D/FlutterJNI( 9629): flutter (null) was loaded normally! -I/flutter ( 9629): [IMPORTANT:flutter/shell/platform/android/android_context_vk_impeller.cc(62)] Using the Impeller rendering backend (Vulkan). -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:11:13) -I/flutter ( 9629): β”‚ #1 main (package:rgnets_fdk/main.dart:35:21) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: Setting environment to development -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:14:9) -I/flutter ( 9629): β”‚ #1 main (package:rgnets_fdk/main.dart:35:21) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: Environment set, isDevelopment=true, isStaging=false, isProduction=false -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:17:9) -I/flutter ( 9629): β”‚ #1 main (package:rgnets_fdk/main.dart:35:21) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: API Base URL will be: http://mock-api.local -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:18:9) -I/flutter ( 9629): β”‚ #1 main (package:rgnets_fdk/main.dart:35:21) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: WebSocket URL will be: ws://localhost:9443/ws -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:19:9) -I/flutter ( 9629): β”‚ #1 main (package:rgnets_fdk/main.dart:35:21) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: useSyntheticData=true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +Installing build/app/outputs/flutter-apk/app-debug.apk... 6.7s +D/FlutterJNI(13127): Beginning load of flutter... +D/FlutterJNI(13127): flutter (null) was loaded normally! +I/flutter (13127): [IMPORTANT:flutter/shell/platform/android/android_context_vk_impeller.cc(62)] Using the Impeller rendering backend (Vulkan). +I/flutter (13127): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter (13127): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:11:13) +I/flutter (13127): β”‚ #1 main (package:rgnets_fdk/main_production.dart:14:21) +I/flutter (13127): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter (13127): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: Setting environment to production +I/flutter (13127): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter (13127): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter (13127): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:14:9) +I/flutter (13127): β”‚ #1 main (package:rgnets_fdk/main_production.dart:14:21) +I/flutter (13127): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter (13127): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: Environment set, isDevelopment=false, isStaging=false, isProduction=true +I/flutter (13127): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter (13127): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter (13127): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:17:9) +I/flutter (13127): β”‚ #1 main (package:rgnets_fdk/main_production.dart:14:21) +I/flutter (13127): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter (13127): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: API Base URL will be: https://api.rgnets.com +I/flutter (13127): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter (13127): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter (13127): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:18:9) +I/flutter (13127): β”‚ #1 main (package:rgnets_fdk/main_production.dart:14:21) +I/flutter (13127): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter (13127): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: WebSocket URL will be: wss://zew.netlab.ninja/ws +I/flutter (13127): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter (13127): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter (13127): β”‚ #0 EnvironmentConfig.setEnvironment (package:rgnets_fdk/core/config/environment.dart:19:9) +I/flutter (13127): β”‚ #1 main (package:rgnets_fdk/main_production.dart:14:21) +I/flutter (13127): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter (13127): β”‚ πŸ’‘ πŸ”§ EnvironmentConfig: useSyntheticData=false +I/flutter (13127): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Syncing files to device Pixel Fold... -I/nets.rgnets_fdk( 9629): Compiler allocated 4970KB to compile void android.view.ViewRootImpl.performTraversals() -Syncing files to device Pixel Fold... 59ms +I/nets.rgnets_fdk(13127): Compiler allocated 4970KB to compile void android.view.ViewRootImpl.performTraversals() +Syncing files to device Pixel Fold... 57ms Flutter run key commands. r Hot reload. πŸ”₯πŸ”₯πŸ”₯ @@ -47,2855 +47,87 @@ d Detach (terminate "flutter run" but leave application running). c Clear the screen q Quit (terminate the application on the device). -A Dart VM Service on Pixel Fold is available at: http://127.0.0.1:54899/sNp2TXI6DA8=/ -I/Choreographer( 9629): Skipped 64 frames! The application may be doing too much work on its main thread. -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 MockDataService._generateNetworkTopology (package:rgnets_fdk/core/services/mock_data_service.dart:35:9) -I/flutter ( 9629): β”‚ #1 new MockDataService._internal (package:rgnets_fdk/core/services/mock_data_service.dart:13:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ MockDataService: Generated 680 rooms -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 MockDataService._generateNetworkTopology (package:rgnets_fdk/core/services/mock_data_service.dart:36:9) -I/flutter ( 9629): β”‚ #1 new MockDataService._internal (package:rgnets_fdk/core/services/mock_data_service.dart:13:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ MockDataService: Generated 1925 total devices -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 MockDataService._generateNetworkTopology (package:rgnets_fdk/core/services/mock_data_service.dart:37:9) -I/flutter ( 9629): β”‚ #1 new MockDataService._internal (package:rgnets_fdk/core/services/mock_data_service.dart:13:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ - Access Points: 1024 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 MockDataService._generateNetworkTopology (package:rgnets_fdk/core/services/mock_data_service.dart:38:9) -I/flutter ( 9629): β”‚ #1 new MockDataService._internal (package:rgnets_fdk/core/services/mock_data_service.dart:13:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ - ONTs: 745 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 MockDataService._generateNetworkTopology (package:rgnets_fdk/core/services/mock_data_service.dart:39:9) -I/flutter ( 9629): β”‚ #1 new MockDataService._internal (package:rgnets_fdk/core/services/mock_data_service.dart:13:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ - Switches: 151 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 MockDataService._generateNetworkTopology (package:rgnets_fdk/core/services/mock_data_service.dart:40:9) -I/flutter ( 9629): β”‚ #1 new MockDataService._internal (package:rgnets_fdk/core/services/mock_data_service.dart:13:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ - WLAN Controllers: 5 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 new ApiService (package:rgnets_fdk/core/services/api_service.dart:18:9) -I/flutter ( 9629): β”‚ #1 apiServiceProvider. (package:rgnets_fdk/core/providers/core_providers.dart:81:10) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ API_SERVICE: Constructor called -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 new ApiService (package:rgnets_fdk/core/services/api_service.dart:19:9) -I/flutter ( 9629): β”‚ #1 apiServiceProvider. (package:rgnets_fdk/core/providers/core_providers.dart:81:10) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ API_SERVICE: Environment is development -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 new ApiService (package:rgnets_fdk/core/services/api_service.dart:20:9) -I/flutter ( 9629): β”‚ #1 apiServiceProvider. (package:rgnets_fdk/core/providers/core_providers.dart:81:10) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ API_SERVICE: apiBaseUrl=http://mock-api.local -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 BackgroundRefreshService.startBackgroundRefresh (package:rgnets_fdk/core/services/background_refresh_service.dart:43:13) -I/flutter ( 9629): β”‚ #1 _FDKAppState.initState. (package:rgnets_fdk/main.dart:72:50) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› BackgroundRefreshService: Starting background refresh -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:34:9) -I/flutter ( 9629): β”‚ #1 _SplashScreenState.initState. (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:27:7) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:03:59.914 (+0:00:01.062258) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸš€ SPLASH_SCREEN: Navigation flow starting -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:35:9) -I/flutter ( 9629): β”‚ #1 _SplashScreenState.initState. (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:27:7) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:03:59.915 (+0:00:01.063827) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: Environment: development -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:36:9) -I/flutter ( 9629): β”‚ #1 _SplashScreenState.initState. (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:27:7) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:03:59.916 (+0:00:01.064401) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: API Base URL: http://mock-api.local -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:37:9) -I/flutter ( 9629): β”‚ #1 _SplashScreenState.initState. (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:27:7) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:03:59.916 (+0:00:01.064932) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: Use Synthetic Data: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -The Flutter DevTools debugger and profiler on Pixel Fold is available at: http://127.0.0.1:9101?uri=http://127.0.0.1:54899/sNp2TXI6DA8=/ -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:46:12) -I/flutter ( 9629): β”‚ #1 _SplashScreenState.initState. (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:27:7) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:03:59.917 (+0:00:01.065434) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: Starting 2-second initialization delay -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/Choreographer( 9629): Skipped 35 frames! The application may be doing too much work on its main thread. -I/HWUI ( 9629): Using FreeType backend (prop=Auto) -D/ImeBackDispatcher( 9629): switch root view (mImeCallbacks.size=0) -D/InsetsController( 9629): hide(ime()) -I/ImeTracker( 9629): com.rgnets.rgnets_fdk:371330a6: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:48:12) -I/flutter ( 9629): β”‚ #1 -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:01.922 (+0:00:03.070834) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: Initialization delay complete -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:53:11) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:01.926 (+0:00:03.075029) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸ”§ SPLASH_SCREEN: Development mode detected -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:54:11) -I/flutter ( 9629): β”‚ #1 -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:01.928 (+0:00:03.076488) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: Skipping auth, navigating directly to /home -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:57:16) -I/flutter ( 9629): β”‚ #1 -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:01.929 (+0:00:03.077997) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› SPLASH_SCREEN: Widget is mounted, navigating... -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 _SplashScreenState._navigateToNext (package:rgnets_fdk/features/splash/presentation/screens/splash_screen.dart:59:16) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:01.950 (+0:00:03.098795) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ SPLASH_SCREEN: βœ… Navigation to /home completed -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] MainScaffold initialized -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:HomeScreen] HomeScreen - Auth state type: AsyncLoading -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:HomeScreen] HomeScreen - Auth is loading -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DevicesNotifier.build (package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart:28:15) -I/flutter ( 9629): β”‚ #1 AsyncNotifierProviderImpl.runNotifierBuild (package:riverpod/src/async_notifier/base.dart:146:43) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:02.086 (+0:00:03.234439) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ DevicesProvider: Loading devices -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DevicesNotifier.silentRefresh (package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart:127:15) -I/flutter ( 9629): β”‚ #1 DevicesNotifier._startBackgroundRefresh. (package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart:173:13) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:02.093 (+0:00:03.241255) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ DevicesProvider: Silent background refresh (context: list) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 new DeviceRepositoryImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:21:13) -I/flutter ( 9629): β”‚ #1 deviceRepositoryProvider. (package:rgnets_fdk/core/providers/repository_providers.dart:103:22) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ DEVICE_REPOSITORY: Constructor called -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 GetDevices.call (package:rgnets_fdk/features/devices/domain/usecases/get_devices.dart:18:13) -I/flutter ( 9629): β”‚ #1 DevicesNotifier.silentRefresh. (package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart:144:42) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› GetDevices use case: Calling repository.getDevices() with fields: id,status,online,last_seen,signal_strength -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.startOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:28:13) -I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:84:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› Performance: Started tracking "DeviceRepository.getDevices" -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:79:15) -I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl.getDevices. (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:71:13) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸ” DEVICE_REPOSITORY: getDevices() called at 2026-01-06T12:04:02.125176 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 GetDevices.call (package:rgnets_fdk/features/devices/domain/usecases/get_devices.dart:18:13) -I/flutter ( 9629): β”‚ #1 DevicesNotifier.build. (package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart:45:42) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› GetDevices use case: Calling repository.getDevices() with fields: id,name,type,status,ip,host,mac,scratch,pms_room,location,last_seen,signal_strength,connected_clients,online,note,images -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.startOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:28:13) -I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:84:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› Performance: Started tracking "DeviceRepository.getDevices" -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:79:15) -I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl.getDevices. (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:71:13) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸ” DEVICE_REPOSITORY: getDevices() called at 2026-01-06T12:04:02.149803 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomsNotifier.build (package:rgnets_fdk/features/rooms/presentation/providers/rooms_riverpod_provider.dart:15:15) -I/flutter ( 9629): β”‚ #1 AsyncNotifierProviderImpl.runNotifierBuild (package:riverpod/src/async_notifier/base.dart:146:43) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:02.158 (+0:00:03.306806) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ RoomsProvider: Loading rooms -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:30:11) -I/flutter ( 9629): β”‚ #1 GetRooms.call (package:rgnets_fdk/features/rooms/domain/usecases/get_rooms.dart:15:23) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ RoomRepositoryImpl.getRooms() called -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:31:11) -I/flutter ( 9629): β”‚ #1 GetRooms.call (package:rgnets_fdk/features/rooms/domain/usecases/get_rooms.dart:15:23) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ Environment check: isDevelopment=true, isStaging=false, isProduction=false -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:51:17) -I/flutter ( 9629): β”‚ #1 GetRooms.call (package:rgnets_fdk/features/rooms/domain/usecases/get_rooms.dart:15:23) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ RoomRepositoryImpl: Using DEVELOPMENT MODE - returning mock data -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomMockDataSourceImpl.getRooms (package:rgnets_fdk/features/rooms/data/datasources/room_mock_data_source.dart:21:13) -I/flutter ( 9629): β”‚ #1 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:52:49) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ RoomMockDataSource: Using mock data for development -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 NotificationsDomainNotifier.build (package:rgnets_fdk/features/notifications/presentation/providers/notifications_domain_provider.dart:19:15) -I/flutter ( 9629): β”‚ #1 AsyncNotifierProviderImpl.runNotifierBuild (package:riverpod/src/async_notifier/base.dart:146:43) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:02.181 (+0:00:03.329624) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ NotificationsProvider: Loading notifications -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 NotificationRepositoryImpl.getNotifications (package:rgnets_fdk/features/notifications/data/repositories/notification_repository_impl.dart:33:15) -I/flutter ( 9629): β”‚ #1 GetNotifications.call (package:rgnets_fdk/features/notifications/domain/usecases/get_notifications.dart:15:23) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› πŸ”” NotificationRepository: Fetching devices for notification generation -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.startOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:28:13) -I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:84:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› Performance: Started tracking "DeviceRepository.getDevices" -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:79:15) -I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl.getDevices. (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:71:13) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸ” DEVICE_REPOSITORY: getDevices() called at 2026-01-06T12:04:02.195517 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 NotificationRepositoryImpl.getNotifications (package:rgnets_fdk/features/notifications/data/repositories/notification_repository_impl.dart:33:15) -I/flutter ( 9629): β”‚ #1 DeviceNotificationsNotifier.build (package:rgnets_fdk/features/notifications/presentation/providers/device_notification_provider.dart:29:37) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› πŸ”” NotificationRepository: Fetching devices for notification generation -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.startOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:28:13) -I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:84:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› Performance: Started tracking "DeviceRepository.getDevices" -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:79:15) -I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl.getDevices. (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:71:13) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸ” DEVICE_REPOSITORY: getDevices() called at 2026-01-06T12:04:02.210282 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] FDKAppBar initialized with traveling morse code: "control communication cognizance" -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] AppBarNotifier initialized -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 0, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updating route to: /home -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updated app bar state - Title: Dashboard, Search: false -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] Route changed to: /home, Index: 0 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 Auth.build (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:35:9) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:02.527 (+0:00:03.675293) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸ” AUTH_NOTIFIER: build() called - initializing auth state -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 Auth.build (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:36:9) -I/flutter ( 9629): β”‚ #1 -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:02.527 (+0:00:03.675878) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Provider hash: 288151843 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 Auth.build (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:40:15) -I/flutter ( 9629): β”‚ #1 -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:02.528 (+0:00:03.676246) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Checking for existing user session... -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:91:17) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Cache is valid, loading from cache -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:91:17) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Cache is valid, loading from cache -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:91:17) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Cache is valid, loading from cache -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:91:17) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Cache is valid, loading from cache -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 Auth.build. (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:56:17) -I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:02.541 (+0:00:03.689614) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ AUTH_NOTIFIER: βœ… Found existing user session! -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 Auth.build. (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:57:17) -I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:02.542 (+0:00:03.690185) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Username: developer -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 Auth.build. (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:58:17) -I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:02.542 (+0:00:03.690738) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: API URL: https://dev.local -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceLocalDataSourceImpl.getCachedDevices (package:rgnets_fdk/features/devices/data/datasources/device_local_data_source.dart:80:17) -I/flutter ( 9629): β”‚ #1 -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› Loaded 1920 devices from indexed cache -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:95:19) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Loaded 1920 devices from cache -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._refreshInBackground (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:162:15) -I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:98:21) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› DeviceRepositoryImpl: Starting background refresh -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.endOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:68:13) -I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:88:7) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› Performance: DeviceRepository.getDevices completed [SUCCESS] in 672ms -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 GetDevices.call. (package:rgnets_fdk/features/devices/domain/usecases/get_devices.dart:22:28) -I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ GetDevices use case: Success - 1920 devices -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceLocalDataSourceImpl.getCachedDevices (package:rgnets_fdk/features/devices/data/datasources/device_local_data_source.dart:80:17) -I/flutter ( 9629): β”‚ #1 -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› Loaded 1920 devices from indexed cache -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:95:19) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Loaded 1920 devices from cache -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._refreshInBackground (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:162:15) -I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:98:21) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› DeviceRepositoryImpl: Starting background refresh -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.endOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:38:15) -I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:88:7) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ ⚠️ Performance: No active operation found for "DeviceRepository.getDevices" -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 GetDevices.call. (package:rgnets_fdk/features/devices/domain/usecases/get_devices.dart:22:28) -I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ GetDevices use case: Success - 1920 devices -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DevicesNotifier.build.. (package:rgnets_fdk/features/devices/presentation/providers/devices_provider.dart:58:25) -I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:02.951 (+0:00:04.100062) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ DevicesProvider: Successfully loaded 1920 devices with 16 fields -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceLocalDataSourceImpl.getCachedDevices (package:rgnets_fdk/features/devices/data/datasources/device_local_data_source.dart:80:17) -I/flutter ( 9629): β”‚ #1 -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› Loaded 1920 devices from indexed cache -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:95:19) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Loaded 1920 devices from cache -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._refreshInBackground (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:162:15) -I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:98:21) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› DeviceRepositoryImpl: Starting background refresh -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.endOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:38:15) -I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:88:7) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ ⚠️ Performance: No active operation found for "DeviceRepository.getDevices" -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 NotificationRepositoryImpl.getNotifications. (package:rgnets_fdk/features/notifications/data/repositories/notification_repository_impl.dart:44:19) -I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› Fetched 1920 devices for notification generation -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 NotificationsDomainNotifier.build. (package:rgnets_fdk/features/notifications/presentation/providers/notifications_domain_provider.dart:33:21) -I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:03.033 (+0:00:04.181960) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ NotificationsProvider: Successfully loaded 2169 notifications -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceLocalDataSourceImpl.getCachedDevices (package:rgnets_fdk/features/devices/data/datasources/device_local_data_source.dart:80:17) -I/flutter ( 9629): β”‚ #1 -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› Loaded 1920 devices from indexed cache -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:95:19) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ DeviceRepositoryImpl: Loaded 1920 devices from cache -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 DeviceRepositoryImpl._refreshInBackground (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:162:15) -I/flutter ( 9629): β”‚ #1 DeviceRepositoryImpl._getDevicesImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:98:21) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› DeviceRepositoryImpl: Starting background refresh -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 PerformanceMonitorService.endOperation (package:rgnets_fdk/core/services/performance_monitor_service.dart:38:15) -I/flutter ( 9629): β”‚ #1 PerformanceMonitorService.trackFuture (package:rgnets_fdk/core/services/performance_monitor_service.dart:88:7) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ ⚠️ Performance: No active operation found for "DeviceRepository.getDevices" -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 NotificationRepositoryImpl.getNotifications. (package:rgnets_fdk/features/notifications/data/repositories/notification_repository_impl.dart:44:19) -I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› Fetched 1920 devices for notification generation -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomMockDataSourceImpl.getRooms (package:rgnets_fdk/features/rooms/data/datasources/room_mock_data_source.dart:30:13) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ RoomMockDataSource: Parsing 680 mock rooms from JSON -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:54:17) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ RoomRepositoryImpl: Returning 680 mock rooms -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomsNotifier.build. (package:rgnets_fdk/features/rooms/presentation/providers/rooms_riverpod_provider.dart:29:21) -I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:03.167 (+0:00:04.315921) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ RoomsProvider: Successfully loaded 680 rooms -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 0, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -D/WindowOnBackDispatcher( 9629): setTopOnBackInvokedCallback (unwrapped): io.flutter.embedding.android.FlutterActivity$1@eaf2497 -D/WindowOnBackDispatcher( 9629): setTopOnBackInvokedCallback (unwrapped): android.app.Activity$$ExternalSyntheticLambda0@d54eb06 -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -D/ProfileInstaller( 9629): Installing profile for com.rgnets.rgnets_fdk -I/scudo ( 9629): Can't populate more pages for size class 65552. -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/nets.rgnets_fdk( 9629): Waiting for a blocking GC NativeAlloc -I/nets.rgnets_fdk( 9629): NativeAlloc concurrent mark compact GC freed 25MB AllocSpace bytes, 127(12MB) LOS objects, 82% free, 5315KB/29MB, paused 324us,6.541ms total 76.623ms -I/nets.rgnets_fdk( 9629): WaitForGcToComplete blocked NativeAlloc on NativeAlloc for 74.789ms -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] Navigation item tapped: 5 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] Tab changed from 0 to 5 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /home, Title: Dashboard -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Dashboard) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updating route to: /settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updated app bar state - Title: Settings, Search: false -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] Route changed to: /settings, Index: 5 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 BackgroundRefreshService._performRefresh (package:rgnets_fdk/core/services/background_refresh_service.dart:70:13) -I/flutter ( 9629): β”‚ #1 new Future.delayed. (dart:async/future.dart:419:42) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› BackgroundRefreshService: Starting background refresh -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:30:11) -I/flutter ( 9629): β”‚ #1 BackgroundRefreshService._refreshRooms (package:rgnets_fdk/core/services/background_refresh_service.dart:124:48) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ RoomRepositoryImpl.getRooms() called -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:31:11) -I/flutter ( 9629): β”‚ #1 BackgroundRefreshService._refreshRooms (package:rgnets_fdk/core/services/background_refresh_service.dart:124:48) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ Environment check: isDevelopment=true, isStaging=false, isProduction=false -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:51:17) -I/flutter ( 9629): β”‚ #1 BackgroundRefreshService._refreshRooms (package:rgnets_fdk/core/services/background_refresh_service.dart:124:48) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ RoomRepositoryImpl: Using DEVELOPMENT MODE - returning mock data -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomMockDataSourceImpl.getRooms (package:rgnets_fdk/features/rooms/data/datasources/room_mock_data_source.dart:21:13) -I/flutter ( 9629): β”‚ #1 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:52:49) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ RoomMockDataSource: Using mock data for development -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updating route to: /settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updated app bar state - Title: Settings, Search: false -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] Route changed to: /settings, Index: 5 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -D/WindowOnBackDispatcher( 9629): setTopOnBackInvokedCallback (unwrapped): io.flutter.embedding.android.FlutterActivity$1@eaf2497 -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomMockDataSourceImpl.getRooms (package:rgnets_fdk/features/rooms/data/datasources/room_mock_data_source.dart:30:13) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ RoomMockDataSource: Parsing 680 mock rooms from JSON -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 RoomRepositoryImpl.getRooms (package:rgnets_fdk/features/rooms/data/repositories/room_repository_impl.dart:54:17) -I/flutter ( 9629): β”‚ #1  -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ RoomRepositoryImpl: Returning 680 mock rooms -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 BackgroundRefreshService._refreshRooms. (package:rgnets_fdk/core/services/background_refresh_service.dart:134:19) -I/flutter ( 9629): β”‚ #1 Right.match (package:fpdart/src/either.dart:530:14) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› BackgroundRefreshService: Rooms refreshed in 623ms -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 Auth.signOut (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:196:9) -I/flutter ( 9629): β”‚ #1 SettingsScreen._showSignOutDialog.. (package:rgnets_fdk/features/settings/presentation/screens/settings_screen.dart:571:53) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:11.796 (+0:00:12.944768) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ πŸšͺ AUTH_NOTIFIER: signOut() called -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 Auth.signOut (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:197:9) -I/flutter ( 9629): β”‚ #1 SettingsScreen._showSignOutDialog.. (package:rgnets_fdk/features/settings/presentation/screens/settings_screen.dart:571:53) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:11.797 (+0:00:12.945856) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Current state before signout: AuthStatus.authenticated(user: User(username: developer, apiUrl: https://dev.local, displayName: Developer User, email: dev@example.com)) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 Auth.signOut (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:201:15) -I/flutter ( 9629): β”‚ #1 SettingsScreen._showSignOutDialog.. (package:rgnets_fdk/features/settings/presentation/screens/settings_screen.dart:571:53) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:11.798 (+0:00:12.946385) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Setting state to unauthenticated -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 Auth.signOut (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:206:17) -I/flutter ( 9629): β”‚ #1 SettingsScreen._showSignOutDialog.. (package:rgnets_fdk/features/settings/presentation/screens/settings_screen.dart:571:53) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:11.799 (+0:00:12.947382) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Disconnecting WebSocket... -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 Auth.signOut (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:221:15) -I/flutter ( 9629): β”‚ #1 SettingsScreen._showSignOutDialog.. (package:rgnets_fdk/features/settings/presentation/screens/settings_screen.dart:571:53) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:11.803 (+0:00:12.951307) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› AUTH_NOTIFIER: Clearing storage in background -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 Auth.signOut (package:rgnets_fdk/features/auth/presentation/providers/auth_notifier.dart:224:15) -I/flutter ( 9629): β”‚ #1 SettingsScreen._showSignOutDialog.. (package:rgnets_fdk/features/settings/presentation/screens/settings_screen.dart:571:53) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ 12:04:11.805 (+0:00:12.953512) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ’‘ AUTH_NOTIFIER: βœ… Sign out initiated -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updating route to: /settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Updated app bar state - Title: Settings, Search: false -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:Navigation] Route changed to: /settings, Index: 5 -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -D/WindowOnBackDispatcher( 9629): setTopOnBackInvokedCallback (unwrapped): android.app.Activity$$ExternalSyntheticLambda0@d54eb06 -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building FDKAppBar -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] App bar state - Route: /settings, Title: Settings -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building logo section -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building center section (page: Settings) -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -I/flutter ( 9629): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ -I/flutter ( 9629): β”‚ #0 LoggerService._log (package:rgnets_fdk/core/services/logger_service.dart:229:13) -I/flutter ( 9629): β”‚ #1 LoggerService.debug (package:rgnets_fdk/core/services/logger_service.dart:42:5) -I/flutter ( 9629): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ -I/flutter ( 9629): β”‚ πŸ› [RGNets-FDK:AppBar] Building action buttons - Unread: 2169, Connected: true -I/flutter ( 9629): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── -D/WindowOnBackDispatcher( 9629): setTopOnBackInvokedCallback (unwrapped): io.flutter.embedding.android.FlutterActivity$1@eaf2497 -I/scudo ( 9629): Scudo ERROR: internal map failure (error desc=Out of memory) -F/libc ( 9629): Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 9696 (1.raster), pid 9629 (nets.rgnets_fdk) -*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** -Build fingerprint: 'google/felix/felix:16/BP3A.251005.004.B2/14331693:user/release-keys' -Kernel Release: '6.1.134-android14-11-g66e758f7d0c0-ab13748739' -Revision: 'MP1.0' -ABI: 'arm64' -Timestamp: 2026-01-06 12:04:12.757364501-0800 -Process uptime: 17s -Executable: /system/bin/app_process64 -Cmdline: com.rgnets.rgnets_fdk -pid: 9629, tid: 9696, name: 1.raster >>> com.rgnets.rgnets_fdk <<< -uid: 10324 -tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE) -esr: 0000000092000006 (Data Abort Exception 0x24) -signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr -------- -Abort message: 'Scudo ERROR: internal map failure (error desc=Out of memory)' - x0 0000000000000000 x1 00000000000025e0 x2 0000000000000006 x3 0000006fc0446130 - x4 71746b6860651f6f x5 71746b6860651f6f x6 71746b6860651f6f x7 7f7f7f7f7f7f7f7f - x8 00000000000000f0 x9 f3d3ca5156c5f78e x10 0000000000000001 x11 00000072e955e150 - x12 00000000695d6abc x13 000000007fffffff x14 00000000004c8b2a x15 000003e966838e1d - x16 00000072e95c70d8 x17 00000072e95af5c0 x18 0000006f379fc000 x19 000000000000259d - x20 00000000000025e0 x21 00000000ffffffff x22 0000000000000005 x23 0000000000000000 - x24 0000006d56881000 x25 0000006d568816e0 x26 0000006d568ee000 x27 fffffffffffffff0 - x28 0000000000000000 x29 0000006fc04461b0 - lr 00000072e95481b8 sp 0000006fc0446130 pc 00000072e95481dc pst 0000000000001000 - esr 0000000092000006 -52 total frames -backtrace: - #00 pc 00000000000741dc /apex/com.android.runtime/lib64/bionic/libc.so (abort+156) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) - #01 pc 000000000005b058 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::die()+8) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) - #02 pc 000000000005bd1c /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportRawError(char const*)+28) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) - #03 pc 000000000005c44c /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportMapError(unsigned long)+172) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) - #04 pc 000000000005b920 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::MemMapLinux::remapImpl(unsigned long, unsigned long, char const*, unsigned long)+208) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) - #05 pc 0000000000060b44 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::MapAllocator>::allocate(scudo::Options const&, unsigned long, unsigned long, unsigned long*, scudo::FillContentsMode)+404) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) - #06 pc 000000000005d5f4 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator::allocate(unsigned long, scudo::Chunk::Origin, unsigned long, bool)+900) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) - #07 pc 000000000005d924 /apex/com.android.runtime/lib64/bionic/libc.so (scudo_malloc+36) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) - #08 pc 000000000005777c /apex/com.android.runtime/lib64/bionic/libc.so (malloc+44) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) - #09 pc 0000000001b280f8 /vendor/lib64/egl/libGLES_mali.so (gfx::command_pool::create_command_buffer_builder(bool)+40) (BuildId: cdb93069f4b906eaed1b15fd6bccfde3d2538c67) - #10 pc 000000000092aef4 /vendor/lib64/egl/libGLES_mali.so (vkAllocateCommandBuffers+340) (BuildId: cdb93069f4b906eaed1b15fd6bccfde3d2538c67) - #11 pc 00000000000223b0 /system/lib64/libvulkan.so (vulkan::driver::AllocateCommandBuffers(VkDevice_T*, VkCommandBufferAllocateInfo const*, VkCommandBuffer_T**)+64) (BuildId: 9638771a6d52b924c17ce0d4a7147a52) - #12 pc 0000000001deb51c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #13 pc 0000000001e0d394 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #14 pc 0000000001df65d4 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #15 pc 0000000001df6568 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #16 pc 0000000001df6518 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #17 pc 0000000001df516c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #18 pc 0000000001df4f34 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #19 pc 0000000001dafe08 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #20 pc 0000000001daeb58 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #21 pc 0000000001daeeb4 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #22 pc 0000000001db2798 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #23 pc 0000000001daa14c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #24 pc 0000000001daa050 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #25 pc 0000000001daeb58 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #26 pc 0000000001daea3c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #27 pc 0000000001dc2738 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #28 pc 0000000001d80544 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #29 pc 0000000001d7fc50 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #30 pc 0000000001d7fa84 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #31 pc 0000000001d879b0 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #32 pc 0000000001a2ae7c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #33 pc 0000000001d881c8 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #34 pc 0000000001a2b5ec /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #35 pc 0000000001a2a910 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #36 pc 0000000001a2adcc /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #37 pc 0000000001d89354 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #38 pc 0000000001e3a8e8 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #39 pc 0000000001e3a6c0 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #40 pc 0000000001e23e6c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #41 pc 0000000001e61ef8 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #42 pc 00000000019c47ec /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #43 pc 00000000019ca2e4 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #44 pc 0000000000014bd0 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+1216) (BuildId: cb6b340ad1d5b10fa22dc2cf5ae28825) - #45 pc 0000000000025784 /system/lib64/libandroid.so (ALooper_pollOnce+100) (BuildId: bf08322d292d1d8730eb313a405f8748) - #46 pc 00000000019ca26c /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #47 pc 00000000019c4738 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #48 pc 00000000019c85b0 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #49 pc 00000000019c8448 /data/app/~~AKL0CtiU98OY4DqCQW8zNA==/com.rgnets.rgnets_fdk-hnSAoIKzJeNNVog8RLhZ9w==/base.apk!libflutter.so (offset 0x1a0c000) (BuildId: df6f3604e8bddf4dfa565aac2f8384abbe21717e) - #50 pc 0000000000084cfc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*) (.__uniq.67847048707805468364044055584648682506)+236) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) - #51 pc 0000000000077500 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 8dc8afb9a8c98d2a9ecf47561e4816e1) -Lost connection to device. +A Dart VM Service on Pixel Fold is available at: http://127.0.0.1:59637/X-VM0z9H0Zc=/ +I/Choreographer(13127): Skipped 46 frames! The application may be doing too much work on its main thread. +The Flutter DevTools debugger and profiler on Pixel Fold is available at: http://127.0.0.1:9101?uri=http://127.0.0.1:59637/X-VM0z9H0Zc=/ +I/HWUI (13127): Using FreeType backend (prop=Auto) +D/ImeBackDispatcher(13127): switch root view (mImeCallbacks.size=0) +D/InsetsController(13127): hide(ime()) +I/ImeTracker(13127): com.rgnets.rgnets_fdk:5d15963a: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN +D/WindowOnBackDispatcher(13127): setTopOnBackInvokedCallback (unwrapped): io.flutter.embedding.android.FlutterActivity$1@a75c7bb +D/WindowOnBackDispatcher(13127): setTopOnBackInvokedCallback (unwrapped): android.app.Activity$$ExternalSyntheticLambda0@d54eb06 +D/ProfileInstaller(13127): Installing profile for com.rgnets.rgnets_fdk +I/nets.rgnets_fdk(13127): Background concurrent mark compact GC freed 24MB AllocSpace bytes, 16(7776KB) LOS objects, 82% free, 5127KB/29MB, paused 186us,5.086ms total 78.617ms +I/flutter (13127): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter (13127): β”‚ #0 new ApiService (package:rgnets_fdk/core/services/api_service.dart:18:9) +I/flutter (13127): β”‚ #1 apiServiceProvider. (package:rgnets_fdk/core/providers/core_providers.dart:81:10) +I/flutter (13127): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter (13127): β”‚ πŸ’‘ API_SERVICE: Constructor called +I/flutter (13127): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter (13127): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter (13127): β”‚ #0 new ApiService (package:rgnets_fdk/core/services/api_service.dart:19:9) +I/flutter (13127): β”‚ #1 apiServiceProvider. (package:rgnets_fdk/core/providers/core_providers.dart:81:10) +I/flutter (13127): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter (13127): β”‚ πŸ’‘ API_SERVICE: Environment is production +I/flutter (13127): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter (13127): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter (13127): β”‚ #0 new ApiService (package:rgnets_fdk/core/services/api_service.dart:20:9) +I/flutter (13127): β”‚ #1 apiServiceProvider. (package:rgnets_fdk/core/providers/core_providers.dart:81:10) +I/flutter (13127): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter (13127): β”‚ πŸ’‘ API_SERVICE: apiBaseUrl=https://api.rgnets.com +I/flutter (13127): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +I/flutter (13127): β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +I/flutter (13127): β”‚ #0 new DeviceRepositoryImpl (package:rgnets_fdk/features/devices/data/repositories/device_repository.dart:21:13) +I/flutter (13127): β”‚ #1 deviceRepositoryProvider. (package:rgnets_fdk/core/providers/repository_providers.dart:103:22) +I/flutter (13127): β”œβ”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„β”„ +I/flutter (13127): β”‚ πŸ’‘ DEVICE_REPOSITORY: Constructor called +I/flutter (13127): └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +D/WindowOnBackDispatcher(13127): setTopOnBackInvokedCallback (unwrapped): io.flutter.embedding.android.FlutterActivity$1@a75c7bb +I/DynamiteModule(13127): Considering local module com.google.mlkit.dynamite.barcode:10000 and remote module com.google.mlkit.dynamite.barcode:0 +I/DynamiteModule(13127): Selected local version of com.google.mlkit.dynamite.barcode +D/QuirkSettingsLoader(13127): QuirkSettings$MetadataHolderService is not found. +D/CameraX (13127): QuirkSettings from app metadata: null +D/CameraX (13127): QuirkSettings by default: QuirkSettings{enabledWhenDeviceHasQuirk=true, forceEnabledQuirks=[], forceDisabledQuirks=[]} +D/TransportRuntime.JobInfoScheduler(13127): Scheduling upload for context TransportContext(cct, DEFAULT, MSRodHRwczovL2ZpcmViYXNlbG9nZ2luZy5nb29nbGVhcGlzLmNvbS92MGNjL2xvZy9iYXRjaD9mb3JtYXQ9anNvbl9wcm90bzNc) with jobId=-2053560901 in 642865ms(Backend next call timestamp 1767734346384). Attempt 1 +D/TransportRuntime.JobInfoScheduler(13127): Scheduling upload for context TransportContext(cct, VERY_LOW, MSRodHRwczovL2ZpcmViYXNlbG9nZ2luZy5nb29nbGVhcGlzLmNvbS92MGNjL2xvZy9iYXRjaD9mb3JtYXQ9anNvbl9wcm90bzNc) with jobId=-2048580164 in 86400000ms(Backend next call timestamp 1760079248246). Attempt 1 +I/CameraManagerGlobal(13127): Connecting to camera service +D/TransportRuntime.SQLiteEventStore(13127): Storing event with priority=DEFAULT, name=FIREBASE_ML_SDK for destination cct +D/TransportRuntime.JobInfoScheduler(13127): Upload for context TransportContext(cct, DEFAULT, MSRodHRwczovL2ZpcmViYXNlbG9nZ2luZy5nb29nbGVhcGlzLmNvbS92MGNjL2xvZy9iYXRjaD9mb3JtYXQ9anNvbl9wcm90bzNc) is already scheduled. Returning... +D/TransportRuntime.SQLiteEventStore(13127): Storing event with priority=VERY_LOW, name=FIREBASE_ML_SDK for destination cct +D/TransportRuntime.JobInfoScheduler(13127): Upload for context TransportContext(cct, VERY_LOW, MSRodHRwczovL2ZpcmViYXNlbG9nZ2luZy5nb29nbGVhcGlzLmNvbS92MGNjL2xvZy9iYXRjaD9mb3JtYXQ9anNvbl9wcm90bzNc) is already scheduled. Returning... +I/Camera2CameraInfo(13127): Device Level: INFO_SUPPORTED_HARDWARE_LEVEL_FULL +I/Camera2CameraInfo(13127): Device Level: INFO_SUPPORTED_HARDWARE_LEVEL_FULL +I/CameraPresencePrvdr(13127): Starting CameraPresenceProvider monitoring. +I/CameraPresenceSrc(13127): First observer added. Starting monitoring. +I/Camera2PresenceSrc(13127): Starting system availability monitoring. +D/Camera2PresenceSrc(13127): System onCameraAvailable: 0 +D/Camera2PresenceSrc(13127): System onCameraAvailable: 1 +D/Camera2PresenceSrc(13127): [FetchData] Refreshed camera list: CameraIdentifier{cameraIds=0}, CameraIdentifier{cameraIds=1} +D/Camera2PresenceSrc(13127): [FetchData] Refreshed camera list: CameraIdentifier{cameraIds=0}, CameraIdentifier{cameraIds=1} +D/Camera2PresenceSrc(13127): [FetchData] Refreshed camera list: CameraIdentifier{cameraIds=0}, CameraIdentifier{cameraIds=1} +D/Camera2PresenceSrc(13127): System onCameraUnavailable: 0 +D/Camera2PresenceSrc(13127): [FetchData] Refreshed camera list: CameraIdentifier{cameraIds=0}, CameraIdentifier{cameraIds=1} +D/nativeloader(13127): Load /data/app/~~CZQVi3jbm024joy7oG69Iw==/com.rgnets.rgnets_fdk-RxK5zI2FYl2zMCq0Ajs3Yg==/base.apk!/lib/arm64-v8a/libbarhopper_v3.so using class loader ns clns-9 (caller=/data/app/~~CZQVi3jbm024joy7oG69Iw==/com.rgnets.rgnets_fdk-RxK5zI2FYl2zMCq0Ajs3Yg==/base.apk!classes15.dex): ok +D/TransportRuntime.SQLiteEventStore(13127): Storing event with priority=VERY_LOW, name=FIREBASE_ML_SDK for destination cct +D/TransportRuntime.JobInfoScheduler(13127): Upload for context TransportContext(cct, VERY_LOW, MSRodHRwczovL2ZpcmViYXNlbG9nZ2luZy5nb29nbGVhcGlzLmNvbS92MGNjL2xvZy9iYXRjaD9mb3JtYXQ9anNvbl9wcm90bzNc) is already scheduled. Returning... +I/tflite (13127): Initialized TensorFlow Lite runtime. +W/libc (13127): Access denied finding property "ro.mediatek.platform" +W/libc (13127): Access denied finding property "ro.chipname" +W/libc (13127): Access denied finding property "ro.hardware.chipname" +I/tflite (13127): Created TensorFlow Lite XNNPACK delegate for CPU. +I/tflite (13127): Replacing 43 out of 43 node(s) with delegate (TfLiteXNNPackDelegate) node, yielding 1 partitions for the whole graph. +I/tflite (13127): Replacing 35 out of 47 node(s) with delegate (TfLiteXNNPackDelegate) node, yielding 23 partitions for the whole graph. +I/native (13127): I0000 00:00:1767733703.890054 13282 oned_decoder_client.cc:696] barhopper::deep_learning::OnedDecoderClient is created successfully. +D/TransportRuntime.SQLiteEventStore(13127): Storing event with priority=VERY_LOW, name=FIREBASE_ML_SDK for destination cct +D/TransportRuntime.JobInfoScheduler(13127): Upload for context TransportContext(cct, VERY_LOW, MSRodHRwczovL2ZpcmViYXNlbG9nZ2luZy5nb29nbGVhcGlzLmNvbS92MGNjL2xvZy9iYXRjaD9mb3JtYXQ9anNvbl9wcm90bzNc) is already scheduled. Returning... +D/TransportRuntime.SQLiteEventStore(13127): Storing event with priority=VERY_LOW, name=FIREBASE_ML_SDK for destination cct +D/TransportRuntime.JobInfoScheduler(13127): Upload for context TransportContext(cct, VERY_LOW, MSRodHRwczovL2ZpcmViYXNlbG9nZ2luZy5nb29nbGVhcGlzLmNvbS92MGNjL2xvZy9iYXRjaD9mb3JtYXQ9anNvbl9wcm90bzNc) is already scheduled. Returning... +E/BufferQueueProducer(13127): [ImageReader-1600x1200f22m6-13127-2](id:334700000004,api:4,p:1170,c:13127) queueBuffer: BufferQueue has been abandoned +D/TransportRuntime.SQLiteEventStore(13127): Storing event with priority=VERY_LOW, name=FIREBASE_ML_SDK for destination cct +D/TransportRuntime.JobInfoScheduler(13127): Upload for context TransportContext(cct, VERY_LOW, MSRodHRwczovL2ZpcmViYXNlbG9nZ2luZy5nb29nbGVhcGlzLmNvbS92MGNjL2xvZy9iYXRjaD9mb3JtYXQ9anNvbl9wcm90bzNc) is already scheduled. Returning... +E/BufferQueueProducer(13127): [ImageReader-1600x1200f22m6-13127-2](id:334700000004,api:4,p:1170,c:13127) dequeueBuffer: BufferQueue has been abandoned +E/BufferQueueProducer(13127): [ImageReader-1600x1200f22m6-13127-2](id:334700000004,api:4,p:1170,c:13127) cancelBuffer: BufferQueue has been abandoned +D/WindowOnBackDispatcher(13127): setTopOnBackInvokedCallback (unwrapped): android.app.Activity$$ExternalSyntheticLambda0@d54eb06 +D/Camera2PresenceSrc(13127): System onCameraAvailable: 0 +D/Camera2PresenceSrc(13127): [FetchData] Refreshed camera list: CameraIdentifier{cameraIds=0}, CameraIdentifier{cameraIds=1} +D/WindowOnBackDispatcher(13127): setTopOnBackInvokedCallback (unwrapped): io.flutter.embedding.android.FlutterActivity$1@a75c7bb