import 'package:flutter_secure_storage/flutter_secure_storage.dart'; const _kBase = 'odoo_base'; const _kDb = 'odoo_db'; const _kUser = 'odoo_user'; const _kPass = 'odoo_pass'; /// Menyimpan konfigurasi login (url, db, user, password) secara aman /// + menyediakan OdooClient terautentikasi. class Session { static const _storage = FlutterSecureStorage(); static Future save(String baseUrl, String db, String user, String pass) async { await _storage.write(key: _kBase, value: baseUrl); await _storage.write(key: _kDb, value: db); await _storage.write(key: _kUser, value: user); await _storage.write(key: _kPass, value: pass); } static Future<({String base, String db, String user, String pass})?> load() async { final base = await _storage.read(key: _kBase); final db = await _storage.read(key: _kDb); final user = await _storage.read(key: _kUser); final pass = await _storage.read(key: _kPass); if (base == null || user == null || pass == null) return null; return (base: base, db: db ?? 'odoo', user: user, pass: pass); } static Future clear() async { await _storage.delete(key: _kBase); await _storage.delete(key: _kDb); await _storage.delete(key: _kUser); await _storage.delete(key: _kPass); } }