import 'dart:io'; import 'package:path_provider/path_provider.dart'; /// Basisverzeichnis für alle lokalen App-Daten (pyramid.sqlite, auth_log.txt, /// Media-Cache). /// /// Normalfall: das Application-Support-Verzeichnis der Plattform – exakt wie /// bisher, es ändert sich NICHTS. /// /// Nur auf dem Desktop kann die Umgebungsvariable `PYRAMID_PROFILE_DIR` ein /// abweichendes Verzeichnis erzwingen. Zweck: Testläufe mit den /// Autopilot-Testkonten in einem eigenen Profil, parallel zur echten /// Session desselben Windows-Nutzers (die echte Session sieht die Variable /// nie und bleibt unberührt). Bewusst NICHT umgeleitet werden /// shared_preferences und flutter_secure_storage – deren Plugins lösen ihre /// Pfade selbst auf; ein Testprofil teilt sich also den DB-Schlüssel /// (`db_cipher_key`) und die UI-Prefs mit dem Hauptprofil. Für Tests ist das /// unkritisch (der Schlüssel wird nur GELESEN, nie überschrieben), echte /// Zweitkonten bräuchten mehr. Future appSupportDir() async { final override = Platform.isWindows || Platform.isLinux || Platform.isMacOS ? Platform.environment['PYRAMID_PROFILE_DIR'] : null; if (override != null && override.trim().isNotEmpty) { final dir = Directory(override.trim()); await dir.create(recursive: true); return dir; } return getApplicationSupportDirectory(); }