@@ -10,35 +10,34 @@ import dev.matinzd.healthconnect.utils.reactRecordTypeToClassMap
1010class PermissionUtils {
1111 companion object {
1212 fun parsePermissions (reactPermissions : ReadableArray ): Set <String > {
13- return reactPermissions
14- .toArrayList()
15- .mapNotNull {
16- it as HashMap <* , * >
17- val recordType = it[" recordType" ]
18- val accessType = it[" accessType" ]
13+ return reactPermissions.toArrayList().mapNotNull {
14+ it as HashMap <* , * >
15+ val recordType = it[" recordType" ]
16+ val accessType = it[" accessType" ]
1917
20- if (accessType == " write" && recordType == " ExerciseRoute" ) {
21- return @mapNotNull HealthPermission .PERMISSION_WRITE_EXERCISE_ROUTE
22- }
18+ if (accessType == " write" && recordType == " ExerciseRoute" ) {
19+ return @mapNotNull HealthPermission .PERMISSION_WRITE_EXERCISE_ROUTE
20+ }
2321
24- if (accessType == " read" && recordType == " BackgroundAccessPermission " ) {
25- return @mapNotNull HealthPermission .PERMISSION_READ_HEALTH_DATA_IN_BACKGROUND
26- }
22+ if (accessType == " read" && recordType == " ReadHealthDataHistory " ) {
23+ return @mapNotNull HealthPermission .PERMISSION_READ_HEALTH_DATA_HISTORY
24+ }
2725
28- val recordClass = reactRecordTypeToClassMap[recordType] ? : throw InvalidRecordType ()
26+ if (accessType == " read" && recordType == " BackgroundAccessPermission" ) {
27+ return @mapNotNull HealthPermission .PERMISSION_READ_HEALTH_DATA_IN_BACKGROUND
28+ }
2929
30- when (accessType) {
31- " write" -> HealthPermission .getWritePermission(recordClass)
32- " read" -> HealthPermission .getReadPermission(recordClass)
33- else -> null
34- }
35- }
36- .toSet()
30+ val recordClass = reactRecordTypeToClassMap[recordType] ? : throw InvalidRecordType ()
31+
32+ when (accessType) {
33+ " write" -> HealthPermission .getWritePermission(recordClass)
34+ " read" -> HealthPermission .getReadPermission(recordClass)
35+ else -> null
36+ }
37+ }.toSet()
3738 }
3839
39- suspend fun getGrantedPermissions (
40- permissionController : PermissionController
41- ): WritableNativeArray {
40+ suspend fun getGrantedPermissions (permissionController : PermissionController ): WritableNativeArray {
4241 return mapPermissionResult(permissionController.getGrantedPermissions())
4342 }
4443
0 commit comments