merge-update-with-lab-changes
haroon amjad 1 year ago
parent bd3dca6719
commit 62bc29d450

@ -0,0 +1,52 @@
package com.cloud.diplomaticquarterapp.whatsapp
import android.os.Build
import android.util.Log
import androidx.annotation.RequiresApi
import com.cloud.diplomaticquarterapp.penguin.PenguinView
import com.ejada.hmg.MainActivity
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugin.common.MethodCall
import io.flutter.plugin.common.MethodChannel
import java.lang.ref.WeakReference
class WhatsAppOtpPlatformBridge(
private var flutterEngine: FlutterEngine,
private var mainActivity: MainActivity
) {
private lateinit var channel: MethodChannel
companion object {
private const val CHANNEL = "whats_app_otp"
var result: MethodChannel.Result? = null
}
fun invoke() {
channel = MethodChannel(flutterEngine.dartExecutor.binaryMessenger, CHANNEL)
channel.setMethodCallHandler { call: MethodCall, result: MethodChannel.Result ->
when (call.method) {
"isWhatsAppInstalled" -> {
val isAppInstalled =
WhatsApp.isWhatsAppInstalled(WeakReference(mainActivity))
result.success(isAppInstalled)
}
"performHandShake" -> {
WhatsApp.performHandShake(WeakReference(mainActivity))
}
"startListening" -> {
WhatsAppOtpPlatformBridge.result = result
}
else -> {
result.notImplemented()
}
}
}
}
}

@ -0,0 +1,19 @@
/// Represents the pixel format of a `Frame`.
/// * `v420`: 420 YpCbCr 8 Bi-Planar Video Range
/// * `f420`: 420 YpCbCr 8 Bi-Planar Full Range
/// * `x420`: 420 YpCbCr 10 Bi-Planar Video Range
enum PixelFormat { f420, v420, x420 }
PixelFormat pixelFormatFromString(String string) {
switch (string) {
case '420f':
return PixelFormat.f420;
case '420v':
return PixelFormat.v420;
case 'x420':
return PixelFormat.x420;
default:
// ignore: fixme
return PixelFormat.f420;
}
}

@ -0,0 +1,138 @@
/// The vital signs result of a scan.
class VitalSign {
final double heartRate;
final double spo2;
final double ibi;
final double? stress;
final double? stressScore;
final double? respiratoryRate;
final double? hrvSdnn;
final double? hrvRmssd;
final double? temperature;
final String? bloodPressure;
final double? bloodPressureSystolic;
final double? bloodPressureDiastolic;
final double? facialSkinAge;
final double? bloodAlcohol;
final double? bloodSugar;
final String? version;
const VitalSign(
this.heartRate,
this.spo2,
this.ibi,
this.stress,
this.stressScore,
this.respiratoryRate,
this.hrvSdnn,
this.hrvRmssd,
this.temperature,
this.bloodPressure,
this.bloodPressureSystolic,
this.bloodPressureDiastolic,
this.facialSkinAge,
this.bloodAlcohol,
this.bloodSugar,
this.version);
factory VitalSign.fromMap(Map map) {
return VitalSign(
map['heartRate'],
map['spo2'],
map['ibi'],
map['stress'],
map['stressScore'],
map['respiratoryRate'],
map['hrvSdnn'],
map['hrvRmssd'],
map['temperature'],
map['bloodPressure'],
map['bloodPressureSystolic'],
map['bloodPressureDiastolic'],
map['facialSkinAge'],
map['bloodAlcohol'],
map['bloodSugar'],
map['version']);
}
}
/// The cardiovascular risks result of a scan.
class CardiovascularRisks {
final double generalRisk;
final double coronaryHeartDisease;
final double congestiveHeartFailure;
final double intermittentClaudication;
final double stroke;
const CardiovascularRisks(this.generalRisk, this.coronaryHeartDisease,
this.congestiveHeartFailure, this.intermittentClaudication, this.stroke);
factory CardiovascularRisks.fromMap(Map map) {
return CardiovascularRisks(
map['generalRisk'],
map['coronaryHeartDisease'],
map['congestiveHeartFailure'],
map['intermittentClaudication'],
map['stroke']);
}
}
/// The covid risk result of a scan.
class CovidRisk {
final double covidRisk;
const CovidRisk(this.covidRisk);
factory CovidRisk.fromMap(Map map) {
return CovidRisk(map['covidRisk']);
}
}
/// The health risks result of a scan.
class HealthRisks {
final CardiovascularRisks? cardiovascularRisks;
final CovidRisk? covidRisk;
final String version;
const HealthRisks(this.cardiovascularRisks, this.covidRisk, this.version);
factory HealthRisks.fromMap(Map map) {
return HealthRisks(
map['cardiovascularRisks'] != null
? CardiovascularRisks.fromMap(map['cardiovascularRisks'])
: null,
map['covidRisk'] != null ? CovidRisk.fromMap(map['covidRisk']) : null,
map['version']);
}
}
/// The holistic analysis result of a scan.
class HolisticAnalysis {
final double? generalWellness;
final double? bmi;
final double? absi;
final double? cardiacWorkload;
final double? pulseRespiratoryQuotient;
final double? waistToHeightRatio;
final String? version;
const HolisticAnalysis(
this.generalWellness,
this.bmi,
this.absi,
this.cardiacWorkload,
this.pulseRespiratoryQuotient,
this.waistToHeightRatio,
this.version);
factory HolisticAnalysis.fromMap(Map map) {
return HolisticAnalysis(
map['generalWellness'],
map['bmi'],
map['absi'],
map['cardiacWorkload'],
map['pulseRespiratoryQuotient'],
map['waistToHeightRatio'],
map['version']);
}
}

@ -0,0 +1,42 @@
import 'package:plugin_platform_interface/plugin_platform_interface.dart';
import 'camera_permission.dart';
import 'camera_device.dart';
import 'vital_sign_camera_method_channel.dart';
abstract class VitalSignCameraPlatform extends PlatformInterface {
/// Constructs a VitalSignCameraPlatform.
VitalSignCameraPlatform() : super(token: _token);
static final Object _token = Object();
static VitalSignCameraPlatform _instance = MethodChannelVitalSignCamera();
/// The default instance of [VitalSignCameraPlatform] to use.
///
/// Defaults to [MethodChannelVitalSignCamera].
static VitalSignCameraPlatform get instance => _instance;
/// Platform-specific implementations should set this with their own
/// platform-specific class that extends [VitalSignCameraPlatform] when
/// they register themselves.
static set instance(VitalSignCameraPlatform instance) {
PlatformInterface.verifyToken(instance, _token);
_instance = instance;
}
Future<List<CameraDevice>> availableCameraDevices() {
throw UnimplementedError(
'availableCameraDevices() has not been implemented.');
}
Future<CameraPermissionStatus> requestCameraPermission() {
throw UnimplementedError(
'availableCameraDevices() has not been implemented.');
}
Future<CameraPermissionStatus> getCameraPermissionStatus() {
throw UnimplementedError(
'getCameraPermissionStatus() has not been implemented.');
}
}
Loading…
Cancel
Save