Files
Auto-GPT/gui/lib/viewmodels/api_settings_viewmodel.dart
hunteraraujo f3f7fdf381 Add 'gui/' from commit '1b314a5782c42d4c1d2e55e1792e5ed240522b74'
git-subtree-dir: gui
git-subtree-mainline: 9cebc85193
git-subtree-split: 1b314a5782
2023-09-03 13:02:46 -07:00

31 lines
890 B
Dart

import 'package:auto_gpt_flutter_client/utils/rest_api_utility.dart';
import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
class ApiSettingsViewModel with ChangeNotifier {
String _baseURL = "http://127.0.0.1:8000";
SharedPreferences? _prefs;
final RestApiUtility _restApiUtility;
ApiSettingsViewModel(this._restApiUtility) {
_loadBaseURL();
}
String get baseURL => _baseURL;
void _loadBaseURL() async {
_prefs = await SharedPreferences.getInstance();
_baseURL = _prefs?.getString('baseURL') ?? _baseURL;
_restApiUtility.updateBaseURL(_baseURL);
notifyListeners();
}
void updateBaseURL(String newURL) async {
_baseURL = newURL;
_prefs ??= await SharedPreferences.getInstance();
_prefs?.setString('baseURL', newURL);
_restApiUtility.updateBaseURL(newURL);
notifyListeners();
}
}