feat: deploy infrastructure + disk/drive, calendar, presentation, workspaces, onboarding, demo user

This commit is contained in:
2026-05-19 16:26:26 +03:00
parent 688d043dad
commit 3529c39b22
304 changed files with 18826 additions and 1176 deletions
+51
View File
@@ -0,0 +1,51 @@
import '../core/api/client.dart';
import '../core/api/endpoints.dart';
class DiskApi {
final ApiClient _api;
DiskApi(this._api);
Future<List<String>> getProviders() async {
final resp = await _api.get(Endpoints.diskProviders);
final list = resp.data['providers'] as List<dynamic>? ?? [];
return list.map((e) => e as String).toList();
}
Future<Map<String, dynamic>> getStatus() async {
final resp = await _api.get(Endpoints.diskStatus);
return resp.data as Map<String, dynamic>? ?? {};
}
Future<bool> connect(String provider, String code) async {
try {
await _api.post(Endpoints.diskConnect, data: {
'provider': provider,
'code': code,
});
return true;
} catch (_) {
return false;
}
}
Future<bool> disconnect(String provider) async {
try {
await _api.post(Endpoints.diskDisconnect, data: {
'provider': provider,
});
return true;
} catch (_) {
return false;
}
}
Future<String?> getOAuthUrl(String provider) async {
try {
final resp = await _api.get(Endpoints.diskOAuthUrl(provider));
return resp.data['url'] as String?;
} catch (_) {
return null;
}
}
}