fix(front): en mode debug sans API_BASE_URL, cibler le back prod (web inclus)

Évite Uri.base.origin sur flutter run -d chrome qui visait le serveur de dev.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
MARTIN Julien 2026-05-13 17:52:54 +02:00
parent 7ba8d51668
commit 919148fa75

View File

@ -1,18 +1,21 @@
import 'package:flutter/foundation.dart' show kIsWeb; import 'package:flutter/foundation.dart' show kDebugMode, kIsWeb;
class Env { class Env {
/// Base URL de lAPI (sans `/api/v1`). /// Base URL de lAPI (sans `/api/v1`).
/// ///
/// - **Web prod** : par défaut on utilise [Uri.base.origin] (même schéma + hôte que la page), /// - **`API_BASE_URL` en `--dart-define`** : prioritaire (back local, staging, etc.).
/// ce qui évite les blocages « mixed content » (ex. page en `http://` vs API en `https://`) /// - **Mode debug sans define** : toujours **`https://app.ptits-pas.fr`** (web inclus) pour
/// et les builds `--dart-define=API_BASE_URL` ne serait pas passé. /// pointer sur le back de prod depuis lIDE / `flutter run`.
/// - **Web dev** : surcharger avec `--dart-define=API_BASE_URL=http://localhost:3000` (ou lURL du back). /// - **Web release / profile sans define** : [Uri.base.origin] (même hôte que la page déployée).
/// - **Mobile** : défaut `https://app.ptits-pas.fr` ou `API_BASE_URL` en `--dart-define`. /// - **Mobile release / profile sans define** : `https://app.ptits-pas.fr`.
static String get apiBaseUrl { static String get apiBaseUrl {
const fromEnv = String.fromEnvironment('API_BASE_URL'); const fromEnv = String.fromEnvironment('API_BASE_URL');
if (fromEnv.isNotEmpty) { if (fromEnv.isNotEmpty) {
return fromEnv; return fromEnv;
} }
if (kDebugMode) {
return 'https://app.ptits-pas.fr';
}
if (kIsWeb) { if (kIsWeb) {
return Uri.base.origin; return Uri.base.origin;
} }