Update: 2026-06-26 04:04:03

This commit is contained in:
Hamza-Ayed
2026-06-26 04:04:04 +03:00
parent aea0c8e44e
commit da9e6eb981
10 changed files with 325 additions and 112 deletions

View File

@@ -221,7 +221,6 @@ class CRUD {
}
if (sc == 401) {
// استخدام SessionManager لتجديد الجلسة عند 401
if (Get.isRegistered<SessionManager>()) {
final sessionManager = Get.find<SessionManager>();
if (!sessionManager.isRefreshing.value &&
@@ -229,7 +228,6 @@ class CRUD {
await sessionManager.refreshSession(silent: false);
}
} else {
// fallback للتجديد القديم
await getJWT();
}
return 'token_expired';
@@ -262,12 +260,10 @@ class CRUD {
if (Get.isRegistered<SessionManager>()) {
final sessionManager = Get.find<SessionManager>();
await sessionManager.refreshSession(silent: true);
token = r(box.read(BoxName.jwt) ?? '').toString().split(Env.addd)[0];
} else {
// fallback: تجديد يدوي
await getJWT();
token = r(box.read(BoxName.jwt) ?? '').toString().split(Env.addd)[0];
}
token = r(box.read(BoxName.jwt) ?? '').toString().split(Env.addd)[0];
}
// Initialize app signature if null
@@ -302,7 +298,7 @@ class CRUD {
// ═══════════════════════════════════════════════════════════════
// getJWT — V1 Login Flow
// ═══════════════════════════════════════════════════════════════
Future<void> getJWT() async {
Future<bool> getJWT() async {
var payload = {
'fingerprint': _getFpHeader(),
'password': box.read(BoxName.password) ?? '',
@@ -310,7 +306,6 @@ class CRUD {
'aud': 'service',
};
// Initialize app signature if null
if (_appSignature == null) {
try {
_appSignature = await SecurityHelper.getAppSignature();
@@ -340,10 +335,11 @@ class CRUD {
await storage.write(key: BoxName.jwt, value: c(jwt));
if (hmac != null) {
await box.write(BoxName.hmac, hmac);
final verify = box.read(BoxName.hmac);
Log.print('✅ Verified stored HMAC: $verify');
}
return true;
}
Log.print('❌ getJWT failed: $response');
return false;
}
// ─────────────────────────────────────────────────────────────