From e1723e7c6d5d5a70425f733e0dccbe1e6a9c297e Mon Sep 17 00:00:00 2001 From: Vadym Vakhovskiy Date: Mon, 24 Jun 2024 14:49:56 +0200 Subject: [PATCH] fix: conditionally import RN schedule exact alarm --- .../src/permissions/RequestGenericPermission.ts | 9 +++++---- packages/jsActions/nanoflow-actions-native/package.json | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/jsActions/mobile-resources-native/src/permissions/RequestGenericPermission.ts b/packages/jsActions/mobile-resources-native/src/permissions/RequestGenericPermission.ts index 83b2513a2..3993dd3bf 100644 --- a/packages/jsActions/mobile-resources-native/src/permissions/RequestGenericPermission.ts +++ b/packages/jsActions/mobile-resources-native/src/permissions/RequestGenericPermission.ts @@ -14,7 +14,6 @@ import { Permission, PERMISSIONS as RNPermissions } from "react-native-permissions"; -import { getPermission } from "react-native-schedule-exact-alarm-permission"; import { ANDROIDPermissionName, IOSPermissionName } from "../../typings/RequestGenericPermission"; // BEGIN EXTRA CODE @@ -27,12 +26,14 @@ const PERMISSIONS = { IOS: RNPermissions.IOS }; -function handleBlockedPermission(permission: string): void { +async function handleBlockedPermission(permission: string): Promise { const permissionName = permission.replace(/_IOS|_ANDROID/, ""); if (permissionName === "SCHEDULE_EXACT_ALARM") { + const RNExactAlarmPermission = await import("react-native-schedule-exact-alarm-permission"); + Alert.alert("", "Please allow setting alarms and reminders", [ - { text: "Go to alarm settings", onPress: () => getPermission(), isPreferred: true }, + { text: "Go to alarm settings", onPress: () => RNExactAlarmPermission.getPermission(), isPreferred: true }, { text: "Cancel", style: "cancel" } ]); } else { @@ -106,7 +107,7 @@ export async function RequestGenericPermission( case RESULTS.LIMITED: return permissionStatus; case RESULTS.BLOCKED: - handleBlockedPermission(permission); + await handleBlockedPermission(permission); return RESULTS.BLOCKED; case RESULTS.DENIED: return request(mappedPermissionName as Permission); diff --git a/packages/jsActions/nanoflow-actions-native/package.json b/packages/jsActions/nanoflow-actions-native/package.json index ec8f6d4d0..9bfda663f 100644 --- a/packages/jsActions/nanoflow-actions-native/package.json +++ b/packages/jsActions/nanoflow-actions-native/package.json @@ -36,4 +36,4 @@ "eslint": "^7.20.0", "rollup": "^2.68.0" } -} \ No newline at end of file +}