Initial project

This commit is contained in:
Cody
2026-03-06 14:56:17 +08:00
parent 977b627b15
commit bf9e099747
1180 changed files with 50973 additions and 0 deletions

View File

@@ -0,0 +1,18 @@
/// Domain Entity
/// - 表達「通知權限狀態」這個業務概念
/// - 穩定、可被 Facade 回傳
/// - 不要包含 JSON / platform / plugin
class RtcSdkPermissionStatus {
final bool isGranted;
final bool isPermanentlyDenied;
final DateTime? grantedAt;
const RtcSdkPermissionStatus({
required this.isGranted,
required this.isPermanentlyDenied,
this.grantedAt,
});
/// 純業務邏輯允許
bool get canRequestAgain => !isGranted && !isPermanentlyDenied;
}

View File

@@ -0,0 +1,5 @@
// Repository InterfaceDomain
abstract class RtcSdkRepository {
Future<String?> platformVersion();
}

View File

@@ -0,0 +1,15 @@
//UseCase
import '../repositories/rtc_sdk_repository.dart';
class PlatformVersion
{
final RtcSdkRepository _repository;
const PlatformVersion(this._repository);
Future<String?> call() {
return _repository.platformVersion();
}
}