From b4190fb16254ec47286eba2b3d104fd9f8b70fa1 Mon Sep 17 00:00:00 2001 From: Yonas Sandbaek Date: Mon, 12 Aug 2019 16:19:11 +0200 Subject: [PATCH 01/13] Fixed issue with disposal of call screen. --- ios/RNCallKeep/RNCallKeep.m | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ios/RNCallKeep/RNCallKeep.m b/ios/RNCallKeep/RNCallKeep.m index a581728b..d629e717 100644 --- a/ios/RNCallKeep/RNCallKeep.m +++ b/ios/RNCallKeep/RNCallKeep.m @@ -254,6 +254,9 @@ - (void)requestTransaction:(CXTransaction *)transaction callUpdate.supportsGrouping = YES; callUpdate.supportsUngrouping = YES; [self.callKeepProvider reportCallWithUUID:startCallAction.callUUID updated:callUpdate]; + } else if([[transaction.actions firstObject] isKindOfClass:[CXEndCallAction class]]) { + CXEndCallAction *endCallAction = [transaction.actions firstObject]; + [self.callKeepProvider reportCallWithUUID:endCallAction.callUUID endedAtDate:nil reason:CXCallEndedReasonRemoteEnded ]; } } }]; From dcbe9c3288433942abd7a53cafe27d4520afc8ef Mon Sep 17 00:00:00 2001 From: Yonas Sandbaek Date: Tue, 3 Sep 2019 14:19:31 +0200 Subject: [PATCH 02/13] Updated typescript definitions --- index.d.ts | 179 ++++++++++++++++++++++++++--------------------------- 1 file changed, 89 insertions(+), 90 deletions(-) diff --git a/index.d.ts b/index.d.ts index bc270924..cebc73df 100644 --- a/index.d.ts +++ b/index.d.ts @@ -1,25 +1,25 @@ -export type Events = - 'didReceiveStartCallAction' | - 'answerCall' | - 'endCall' | - 'didActivateAudioSession' | - 'didDisplayIncomingCall' | - 'didPerformSetMutedCallAction'; +export type Events = + | "didReceiveStartCallAction" + | "answerCall" + | "endCall" + | "didActivateAudioSession" + | "didDisplayIncomingCall" + | "didPerformSetMutedCallAction"; -type HandleType = 'generic' | 'number' | 'email'; +type HandleType = "generic" | "number" | "email"; interface IOptions { ios: { - appName: string, - imageName?: string, - ringtoneSound?: string, - }, + appName: string; + imageName?: string; + ringtoneSound?: string; + }; android: { - alertTitle: string, - alertDescription: string, - cancelButton: string, - okButton: string, - }, + alertTitle: string; + alertDescription: string; + cancelButton: string; + okButton: string; + }; } export type DidReceiveStartCallActionPayload = { handle: string }; @@ -27,118 +27,117 @@ export type AnswerCallPayload = { callUUID: string }; export type EndCallPayload = AnswerCallPayload; export type DidDisplayIncomingCallPayload = string | undefined; export type DidPerformSetMutedCallActionPayload = boolean; - +export enum EndCallReasons { + failed = 1, + remoteEnded = 2, + unanswered = 3 +} export default class RNCallKeep { - static addEventListener(type: Events, handler: (args: any) => void) { - - } - - static removeEventListener(type: Events, handler: (args: any) => void) { + static addEventListener(type: Events, handler: (args: any) => void) {} - } + static removeEventListener(type: Events, handler: (args: any) => void) {} - static async setup(options: IOptions): Promise { - - } + static async setup(options: IOptions): Promise {} static displayIncomingCall( uuid: string, handle: string, localizedCallerName?: string, handleType?: HandleType, - hasVideo?: boolean, - ) { - - } + hasVideo?: boolean + ) {} /** * @description startCall method is available only on iOS. - */ + */ static startCall( uuid: string, handle: string, handleType?: HandleType, hasVideo?: boolean, - contactIdentifier?: string, - ) { - - } + contactIdentifier?: string + ) {} /** - * @description reportConnectedOutgoingCallWithUUID method is available only on iOS. - */ - static reportConnectedOutgoingCallWithUUID(uuid: string) { - - } - - static endCall(uuid: string) { - - } - - static endAllCalls() { - - } - + * @description reportConnectedOutgoingCallWithUUID method is available only on iOS. + */ + static reportConnectedOutgoingCallWithUUID(uuid: string) {} /** - * @description supportConnectionService method is available only on Android. - */ - static supportConnectionService(): boolean { - - } - + * @description reportConnectingOutgoingCallWithUUID method is available only on iOS. + */ + static reportConnectingOutgoingCallWithUUID(uuid: string) {} /** - * @description hasPhoneAccount method is available only on Android. - */ - static async hasPhoneAccount(): Promise { - - } - + * @description reportUpdatedCall method is available only on iOS. + */ + static reportUpdatedCall(uuid: string, localizedCallerName: string) {} /** - * @description setMutedCall method is available only on iOS. - */ - static setMutedCall(uuid: string, muted: boolean) { + * @description Report that the call ended without the user initiating + */ + static reportEndCallWithUUID(uuid: string, reason: EndCallReasons) {} - } + /** + * updateDisplay method is available only on Android. + * @description Sets the Android caller name and number Use this to update the Android display after an outgoing call has started + */ + static updateDisplay(uuid: string, displayName: string, uri: string) {} /** - * @descriptions sendDTMF is used to send DTMF tones to the PBX. - */ - static sendDTMF(uuid: string, key: string) { + * @description When you reject an incoming call. + */ + static rejectCall(uuid: string) {} - } + /** + * @description When you finish an incoming/outgoing call. + */ + static endCall(uuid: string) {} /** - * @description setMutedCall method is available only on iOS. - */ - static checkIfBusy(): Promise { + * @description End all ongoing connections. + */ + static endAllCalls() {} - } + /** + * @description supportConnectionService method is available only on Android. + */ + static supportConnectionService(): boolean {} /** - * @description setMutedCall method is available only on iOS. - */ - static checkSpeaker(): Promise { + * @description hasPhoneAccount method is available only on Android. + */ + static async hasPhoneAccount(): Promise {} - } + /** + * @description setMutedCall method is available only on iOS. + */ + static setMutedCall(uuid: string, muted: boolean) {} /** - * @description setAvailable method is available only on Android. - */ - static setAvailable(active: boolean) { + * @descriptions sendDTMF is used to send DTMF tones to the PBX. + */ + static sendDTMF(uuid: string, key: string) {} - } + /** + * @description setMutedCall method is available only on iOS. + */ + static checkIfBusy(): Promise {} /** - * @description setAvailable method is available only on Android. - */ - static setCurrentCallActive() { + * @description setMutedCall method is available only on iOS. + */ + static checkSpeaker(): Promise {} - } + /** + * @description setAvailable method is available only on Android. + */ + static setAvailable(active: boolean) {} /** - * @description setAvailable method is available only on Android. - */ - static backToForeground() { + * @description setAvailable method is available only on Android. + */ + static setCurrentCallActive() {} - } + /** + * @description setAvailable method is available only on Android. + */ + static backToForeground() {} } From ba5b48db68bff066564d57aba940d23654f4d587 Mon Sep 17 00:00:00 2001 From: Yonas Sandbaek Date: Wed, 4 Sep 2019 12:06:26 +0200 Subject: [PATCH 03/13] Removed wrong type of end call action --- ios/RNCallKeep/RNCallKeep.m | 3 --- 1 file changed, 3 deletions(-) diff --git a/ios/RNCallKeep/RNCallKeep.m b/ios/RNCallKeep/RNCallKeep.m index ac5fd282..33dadded 100644 --- a/ios/RNCallKeep/RNCallKeep.m +++ b/ios/RNCallKeep/RNCallKeep.m @@ -311,9 +311,6 @@ - (void)requestTransaction:(CXTransaction *)transaction callUpdate.supportsGrouping = YES; callUpdate.supportsUngrouping = YES; [self.callKeepProvider reportCallWithUUID:startCallAction.callUUID updated:callUpdate]; - } else if([[transaction.actions firstObject] isKindOfClass:[CXEndCallAction class]]) { - CXEndCallAction *endCallAction = [transaction.actions firstObject]; - [self.callKeepProvider reportCallWithUUID:endCallAction.callUUID endedAtDate:nil reason:CXCallEndedReasonRemoteEnded ]; } } }]; From 43e0e18383c7938df10f7c07d75a8690e63b1b71 Mon Sep 17 00:00:00 2001 From: Yonas Sandbaek Date: Mon, 30 Sep 2019 13:32:42 +0200 Subject: [PATCH 04/13] Revert "Updated typescript definitions" This reverts commit dcbe9c3288433942abd7a53cafe27d4520afc8ef. --- index.d.ts | 179 +++++++++++++++++++++++++++-------------------------- 1 file changed, 90 insertions(+), 89 deletions(-) diff --git a/index.d.ts b/index.d.ts index cebc73df..bc270924 100644 --- a/index.d.ts +++ b/index.d.ts @@ -1,25 +1,25 @@ -export type Events = - | "didReceiveStartCallAction" - | "answerCall" - | "endCall" - | "didActivateAudioSession" - | "didDisplayIncomingCall" - | "didPerformSetMutedCallAction"; +export type Events = + 'didReceiveStartCallAction' | + 'answerCall' | + 'endCall' | + 'didActivateAudioSession' | + 'didDisplayIncomingCall' | + 'didPerformSetMutedCallAction'; -type HandleType = "generic" | "number" | "email"; +type HandleType = 'generic' | 'number' | 'email'; interface IOptions { ios: { - appName: string; - imageName?: string; - ringtoneSound?: string; - }; + appName: string, + imageName?: string, + ringtoneSound?: string, + }, android: { - alertTitle: string; - alertDescription: string; - cancelButton: string; - okButton: string; - }; + alertTitle: string, + alertDescription: string, + cancelButton: string, + okButton: string, + }, } export type DidReceiveStartCallActionPayload = { handle: string }; @@ -27,117 +27,118 @@ export type AnswerCallPayload = { callUUID: string }; export type EndCallPayload = AnswerCallPayload; export type DidDisplayIncomingCallPayload = string | undefined; export type DidPerformSetMutedCallActionPayload = boolean; -export enum EndCallReasons { - failed = 1, - remoteEnded = 2, - unanswered = 3 -} + export default class RNCallKeep { - static addEventListener(type: Events, handler: (args: any) => void) {} + static addEventListener(type: Events, handler: (args: any) => void) { + + } + + static removeEventListener(type: Events, handler: (args: any) => void) { - static removeEventListener(type: Events, handler: (args: any) => void) {} + } - static async setup(options: IOptions): Promise {} + static async setup(options: IOptions): Promise { + + } static displayIncomingCall( uuid: string, handle: string, localizedCallerName?: string, handleType?: HandleType, - hasVideo?: boolean - ) {} + hasVideo?: boolean, + ) { + + } /** * @description startCall method is available only on iOS. - */ + */ static startCall( uuid: string, handle: string, handleType?: HandleType, hasVideo?: boolean, - contactIdentifier?: string - ) {} + contactIdentifier?: string, + ) { - /** - * @description reportConnectedOutgoingCallWithUUID method is available only on iOS. - */ - static reportConnectedOutgoingCallWithUUID(uuid: string) {} - /** - * @description reportConnectingOutgoingCallWithUUID method is available only on iOS. - */ - static reportConnectingOutgoingCallWithUUID(uuid: string) {} - /** - * @description reportUpdatedCall method is available only on iOS. - */ - static reportUpdatedCall(uuid: string, localizedCallerName: string) {} - /** - * @description Report that the call ended without the user initiating - */ - static reportEndCallWithUUID(uuid: string, reason: EndCallReasons) {} + } /** - * updateDisplay method is available only on Android. - * @description Sets the Android caller name and number Use this to update the Android display after an outgoing call has started - */ - static updateDisplay(uuid: string, displayName: string, uri: string) {} + * @description reportConnectedOutgoingCallWithUUID method is available only on iOS. + */ + static reportConnectedOutgoingCallWithUUID(uuid: string) { - /** - * @description When you reject an incoming call. - */ - static rejectCall(uuid: string) {} + } - /** - * @description When you finish an incoming/outgoing call. - */ - static endCall(uuid: string) {} + static endCall(uuid: string) { - /** - * @description End all ongoing connections. - */ - static endAllCalls() {} + } + + static endAllCalls() { + + } /** - * @description supportConnectionService method is available only on Android. - */ - static supportConnectionService(): boolean {} + * @description supportConnectionService method is available only on Android. + */ + static supportConnectionService(): boolean { + + } /** - * @description hasPhoneAccount method is available only on Android. - */ - static async hasPhoneAccount(): Promise {} + * @description hasPhoneAccount method is available only on Android. + */ + static async hasPhoneAccount(): Promise { + + } /** - * @description setMutedCall method is available only on iOS. - */ - static setMutedCall(uuid: string, muted: boolean) {} + * @description setMutedCall method is available only on iOS. + */ + static setMutedCall(uuid: string, muted: boolean) { + + } /** - * @descriptions sendDTMF is used to send DTMF tones to the PBX. - */ - static sendDTMF(uuid: string, key: string) {} + * @descriptions sendDTMF is used to send DTMF tones to the PBX. + */ + static sendDTMF(uuid: string, key: string) { + + } /** - * @description setMutedCall method is available only on iOS. - */ - static checkIfBusy(): Promise {} + * @description setMutedCall method is available only on iOS. + */ + static checkIfBusy(): Promise { + + } /** - * @description setMutedCall method is available only on iOS. - */ - static checkSpeaker(): Promise {} + * @description setMutedCall method is available only on iOS. + */ + static checkSpeaker(): Promise { + + } /** - * @description setAvailable method is available only on Android. - */ - static setAvailable(active: boolean) {} + * @description setAvailable method is available only on Android. + */ + static setAvailable(active: boolean) { + + } /** - * @description setAvailable method is available only on Android. - */ - static setCurrentCallActive() {} + * @description setAvailable method is available only on Android. + */ + static setCurrentCallActive() { + + } /** - * @description setAvailable method is available only on Android. - */ - static backToForeground() {} + * @description setAvailable method is available only on Android. + */ + static backToForeground() { + + } } From 0979684bfd993065682ebfc6fdf989201116cf8c Mon Sep 17 00:00:00 2001 From: Yonas Sandbaek Date: Mon, 30 Sep 2019 13:56:17 +0200 Subject: [PATCH 05/13] Exposed checkPhoneAccountPermission --- index.d.ts | 4 ++++ index.js | 3 +++ 2 files changed, 7 insertions(+) diff --git a/index.d.ts b/index.d.ts index 65a19e94..7b0fe2f9 100644 --- a/index.d.ts +++ b/index.d.ts @@ -159,6 +159,10 @@ export default class RNCallKeep { } + static checkPhoneAccountPermission(): Promise { + + } + /** * @description setAvailable method is available only on Android. */ diff --git a/index.js b/index.js index f4613c2d..cfd5d771 100644 --- a/index.js +++ b/index.js @@ -124,6 +124,9 @@ class RNCallKeep { ? RNCallKeepModule.checkSpeaker() : Promise.reject('RNCallKeep.checkSpeaker was called from unsupported OS'); + + checkPhoneAccountPermission = async (options) => await RNCallKeepModule.checkPhoneAccountPermission(options.additionalPermissions || []); + setAvailable = (state) => { if (isIOS) { return; From 4e13e43f7d8426be78ee5e4ae72d0f58b2d0e490 Mon Sep 17 00:00:00 2001 From: Yonas Sandbaek Date: Tue, 1 Oct 2019 23:16:38 +0200 Subject: [PATCH 06/13] Fixed incorrect podspec dependency --- RNCallKeep.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RNCallKeep.podspec b/RNCallKeep.podspec index 821d4a50..be08dc18 100644 --- a/RNCallKeep.podspec +++ b/RNCallKeep.podspec @@ -13,6 +13,6 @@ Pod::Spec.new do |s| s.requires_arc = true s.platform = :ios, "8.0" s.source_files = "ios/RNCallKeep/*.{h,m}" - s.dependency 'React/Core' + s.dependency 'React-Core' end From e207d9d4feafa78a8f586780a663ec6d22aa6a8b Mon Sep 17 00:00:00 2001 From: Yonas Sandbaek Date: Wed, 2 Oct 2019 15:49:13 +0200 Subject: [PATCH 07/13] Added hasRequiredPermissions functionality --- index.d.ts | 4 ++++ index.js | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/index.d.ts b/index.d.ts index 7b0fe2f9..f735ddb4 100644 --- a/index.d.ts +++ b/index.d.ts @@ -55,6 +55,10 @@ export default class RNCallKeep { } + static async hasRequiredPermissions(options: IOptions): Promise { + + } + static displayIncomingCall( uuid: string, handle: string, diff --git a/index.js b/index.js index cfd5d771..df52a14d 100644 --- a/index.js +++ b/index.js @@ -44,6 +44,12 @@ class RNCallKeep { return; }; + hasRequiredPermissions = async (options) => { + this.setup(options); + + return await this.hasPhoneAccount(); + } + displayIncomingCall = (uuid, handle, localizedCallerName, handleType = 'number', hasVideo = false) => { if (!isIOS) { RNCallKeepModule.displayIncomingCall(uuid, handle, localizedCallerName); From d7ea6ebacb178c45926d02e82332d2516d1fc9ad Mon Sep 17 00:00:00 2001 From: Yonas Sandbaek Date: Tue, 15 Oct 2019 14:51:50 +0200 Subject: [PATCH 08/13] Fixed 'Activity doesn't exist' bug --- android/src/main/java/io/wazo/callkeep/RNCallKeepModule.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/android/src/main/java/io/wazo/callkeep/RNCallKeepModule.java b/android/src/main/java/io/wazo/callkeep/RNCallKeepModule.java index 15b9cce2..aa905b34 100644 --- a/android/src/main/java/io/wazo/callkeep/RNCallKeepModule.java +++ b/android/src/main/java/io/wazo/callkeep/RNCallKeepModule.java @@ -214,7 +214,7 @@ public void endAllCalls() { @ReactMethod public void checkPhoneAccountPermission(ReadableArray optionalPermissions, Promise promise) { - Activity currentActivity = this.getCurrentActivity(); + Activity currentActivity = getCurrentActivity(); if (!isConnectionServiceAvailable()) { promise.reject(E_ACTIVITY_DOES_NOT_EXIST, "ConnectionService not available for this version of Android."); @@ -464,7 +464,7 @@ private String getApplicationName(Context appContext) { } private Boolean hasPermissions() { - Activity currentActivity = this.getCurrentActivity(); + Activity currentActivity = getCurrentActivity(); boolean hasPermissions = true; for (String permission : permissions) { From 3223220ba65d2ce1c37dac1e3c18f3bb2c33e5c8 Mon Sep 17 00:00:00 2001 From: Yonas Sandbaek Date: Fri, 15 Nov 2019 11:50:08 +0100 Subject: [PATCH 09/13] Added isLocked prop to answerCall event --- ios/RNCallKeep/RNCallKeep.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ios/RNCallKeep/RNCallKeep.m b/ios/RNCallKeep/RNCallKeep.m index 02432a33..62510a9a 100644 --- a/ios/RNCallKeep/RNCallKeep.m +++ b/ios/RNCallKeep/RNCallKeep.m @@ -566,7 +566,7 @@ - (void)provider:(CXProvider *)provider performAnswerCallAction:(CXAnswerCallAct NSLog(@"[RNCallKeep][CXProviderDelegate][provider:performAnswerCallAction]"); #endif [self configureAudioSession]; - [self sendEventWithName:RNCallKeepPerformAnswerCallAction body:@{ @"callUUID": [action.callUUID.UUIDString lowercaseString] }]; + [self sendEventWithName:RNCallKeepPerformAnswerCallAction body:@{ @"callUUID": [action.callUUID.UUIDString lowercaseString], @"isLocked": [[UIApplication sharedApplication] isProtectedDataAvailable] ? @"false" : @"true" }]; [action fulfill]; } From 1ff04cfe2fc76b0e1985adb17683362af8b951ad Mon Sep 17 00:00:00 2001 From: seltar Date: Fri, 6 Dec 2019 15:03:51 +0100 Subject: [PATCH 10/13] Updated hasRequiredPermissions to allow iOS --- index.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/index.js b/index.js index df52a14d..2b6a7ff1 100644 --- a/index.js +++ b/index.js @@ -43,10 +43,12 @@ class RNCallKeep { return; }; - + hasRequiredPermissions = async (options) => { - this.setup(options); - + if(isIOS) { + return true + } + RNCallKeepModule.setup(options); return await this.hasPhoneAccount(); } From db05a7a6ce3039566ab26067a8eeb79027316e36 Mon Sep 17 00:00:00 2001 From: seltar Date: Fri, 6 Dec 2019 15:04:31 +0100 Subject: [PATCH 11/13] Semicolon --- index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.js b/index.js index 2b6a7ff1..03eb5740 100644 --- a/index.js +++ b/index.js @@ -46,7 +46,7 @@ class RNCallKeep { hasRequiredPermissions = async (options) => { if(isIOS) { - return true + return true; } RNCallKeepModule.setup(options); return await this.hasPhoneAccount(); From 6496eccd31d22b889d1c157eee5c91c1e5510c6c Mon Sep 17 00:00:00 2001 From: seltar Date: Sun, 18 Jul 2021 14:44:50 +0200 Subject: [PATCH 12/13] fix error in sentry copy of commit https://bitbucket.org/drdropin/react-native-callkeep/commits/ff6ec8b45f4f7faa68ccfc6e00cdbed6bfd23498 --- ios/RNCallKeep/RNCallKeep.m | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/ios/RNCallKeep/RNCallKeep.m b/ios/RNCallKeep/RNCallKeep.m index 62510a9a..d0142e5a 100644 --- a/ios/RNCallKeep/RNCallKeep.m +++ b/ios/RNCallKeep/RNCallKeep.m @@ -466,8 +466,15 @@ + (BOOL)application:(UIApplication *)application // iOS 13 returns an INStartCallIntent userActivity type if (@available(iOS 13, *)) { INStartCallIntent *intent = (INStartCallIntent*)interaction.intent; - isAudioCall = intent.callCapability == INCallCapabilityAudioCall; - isVideoCall = intent.callCapability == INCallCapabilityVideoCall; + // isAudioCall = intent.callCapability == INCallCapabilityAudioCall; + // isVideoCall = intent.callCapability == INCallCapabilityVideoCall; + if ([intent respondsToSelector:@selector(callCapability)]) { + isAudioCall = intent.callCapability == INCallCapabilityAudioCall; + isVideoCall = intent.callCapability == INCallCapabilityVideoCall; + } else { + isAudioCall = [userActivity.activityType isEqualToString:INStartAudioCallIntentIdentifier]; + isVideoCall = [userActivity.activityType isEqualToString:INStartVideoCallIntentIdentifier]; + } } else { isAudioCall = [userActivity.activityType isEqualToString:INStartAudioCallIntentIdentifier]; isVideoCall = [userActivity.activityType isEqualToString:INStartVideoCallIntentIdentifier]; From a1040440e858ba5b4d1e938b557befe70f0268d6 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Sat, 9 Apr 2022 02:35:57 +0000 Subject: [PATCH 13/13] fix: upgrade react-native-gesture-handler from 1.3.0 to 1.10.3 Snyk has created this PR to upgrade react-native-gesture-handler from 1.3.0 to 1.10.3. See this package in npm: See this project in Snyk: https://app.snyk.io/org/dr-dropin/project/17ea8bd8-d846-40ac-9407-4a31a1ac937d?utm_source=github&utm_medium=referral&page=upgrade-pr --- example/package.json | 2 +- example/yarn.lock | 104 ++++++++++++++++++++++++++++++++++++++----- 2 files changed, 93 insertions(+), 13 deletions(-) diff --git a/example/package.json b/example/package.json index e3263218..594b0147 100644 --- a/example/package.json +++ b/example/package.json @@ -13,7 +13,7 @@ "react-native-background-timer": "^2.1.1", "react-native-callkeep": "https://github.com/react-native-webrtc/react-native-callkeep#fix_outgoing_call_ios", "react-native-device-info": "^2.3.2", - "react-native-gesture-handler": "~1.3.0", + "react-native-gesture-handler": "~1.10.3", "react-native-reanimated": "~1.1.0", "react-native-unimodules": "~0.5.2", "react-native-web": "^0.11.4", diff --git a/example/yarn.lock b/example/yarn.lock index db370bdb..989fee4a 100644 --- a/example/yarn.lock +++ b/example/yarn.lock @@ -839,6 +839,13 @@ lodash "^4.17.13" to-fast-properties "^2.0.0" +"@egjs/hammerjs@^2.0.17": + version "2.0.17" + resolved "https://registry.yarnpkg.com/@egjs/hammerjs/-/hammerjs-2.0.17.tgz#5dc02af75a6a06e4c2db0202cae38c9263895124" + integrity sha512-XQsZgjm2EcVUiZQf11UBJQfmZeEmOW8DpI1gsFeln6w0ae0ii4dMQEQ0kjl6DspdWX1aGY1/loyXnP0JS06e/A== + dependencies: + "@types/hammerjs" "^2.0.36" + "@expo/vector-icons@^10.0.2": version "10.0.3" resolved "https://registry.yarnpkg.com/@expo/vector-icons/-/vector-icons-10.0.3.tgz#9dec25cf6c29871f2bb1fe932029878c221f1f75" @@ -902,6 +909,11 @@ resolved "https://registry.yarnpkg.com/@types/fbemitter/-/fbemitter-2.0.32.tgz#8ed204da0f54e9c8eaec31b1eec91e25132d082c" integrity sha1-jtIE2g9U6cjq7DGx7skeJRMtCCw= +"@types/hammerjs@^2.0.36": + version "2.0.41" + resolved "https://registry.yarnpkg.com/@types/hammerjs/-/hammerjs-2.0.41.tgz#f6ecf57d1b12d2befcce00e928a6a097c22980aa" + integrity sha512-ewXv/ceBaJprikMcxCmWU1FKyMAQ2X7a9Gtmzw8fcg2kIePI1crERDM818W+XYrxqdBBOdlf2rm137bU+BltCA== + "@types/invariant@^2.2.29": version "2.2.30" resolved "https://registry.yarnpkg.com/@types/invariant/-/invariant-2.2.30.tgz#20efa342807606ada5483731a8137cb1561e5fe9" @@ -1665,6 +1677,13 @@ create-react-class@^15.6.2, create-react-class@^15.6.3: loose-envify "^1.3.1" object-assign "^4.1.1" +cross-fetch@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.5.tgz#e1389f44d9e7ba767907f7af8454787952ab534f" + integrity sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw== + dependencies: + node-fetch "2.6.7" + cross-spawn@^5.0.1, cross-spawn@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" @@ -2189,6 +2208,19 @@ fbjs@^1.0.0: setimmediate "^1.0.5" ua-parser-js "^0.7.18" +fbjs@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-3.0.4.tgz#e1871c6bd3083bac71ff2da868ad5067d37716c6" + integrity sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ== + dependencies: + cross-fetch "^3.1.5" + fbjs-css-vars "^1.0.0" + loose-envify "^1.0.0" + object-assign "^4.1.0" + promise "^7.1.1" + setimmediate "^1.0.5" + ua-parser-js "^0.7.30" + figures@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" @@ -2488,10 +2520,12 @@ has-values@^1.0.0: is-number "^3.0.0" kind-of "^4.0.0" -hoist-non-react-statics@^2.3.1: - version "2.5.5" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz#c5903cf409c0dfd908f388e619d86b9c1174cb47" - integrity sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw== +hoist-non-react-statics@^3.3.0: + version "3.3.2" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" + integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== + dependencies: + react-is "^16.7.0" hosted-git-info@^2.1.4: version "2.7.1" @@ -3549,6 +3583,13 @@ nice-try@^1.0.4: resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== +node-fetch@2.6.7: + version "2.6.7" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" + integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== + dependencies: + whatwg-url "^5.0.0" + node-fetch@^1.0.1: version "1.7.3" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" @@ -4033,7 +4074,7 @@ promise@^7.1.1: dependencies: asap "~2.0.3" -prop-types@^15.5.10, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2: +prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2: version "15.7.2" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== @@ -4042,6 +4083,15 @@ prop-types@^15.5.10, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, object-assign "^4.1.1" react-is "^16.8.1" +prop-types@^15.7.2: + version "15.8.1" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" + integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== + dependencies: + loose-envify "^1.4.0" + object-assign "^4.1.1" + react-is "^16.13.1" + pseudomap@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" @@ -4117,6 +4167,11 @@ react-dom@^16.8.6: prop-types "^15.6.2" scheduler "^0.13.6" +react-is@^16.13.1, react-is@^16.7.0: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + react-is@^16.8.1: version "16.8.6" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16" @@ -4141,14 +4196,16 @@ react-native-device-info@^2.3.2: resolved "https://registry.yarnpkg.com/react-native-device-info/-/react-native-device-info-2.3.2.tgz#db2b8f135aaf2515583e367ab791dcc7d2f0d14c" integrity sha512-ccpPuUbwhw5uYdVwN1UJp6ykMZz6U/u82HNM3oJ7O6MP8RIMlMDkHbqR4O0sDtUSuRMGiqqRzFtmOLFYeQ0ODw== -react-native-gesture-handler@~1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-1.3.0.tgz#d0386f565928ccc1849537f03f2e37fd5f6ad43f" - integrity sha512-ASRFIXBuKRvqlmwkWJhV8yP2dTpvcqVrLNpd7FKVBFHYWr6SAxjGyO9Ik8w1lAxDhMlRP2IcJ9p9eq5X2WWeLQ== +react-native-gesture-handler@~1.10.3: + version "1.10.3" + resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-1.10.3.tgz#942bbf2963bbf49fa79593600ee9d7b5dab3cfc0" + integrity sha512-cBGMi1IEsIVMgoox4RvMx7V2r6bNKw0uR1Mu1o7NbuHS6BRSVLq0dP34l2ecnPlC+jpWd3le6Yg1nrdCjby2Mw== dependencies: - hoist-non-react-statics "^2.3.1" - invariant "^2.2.2" - prop-types "^15.5.10" + "@egjs/hammerjs" "^2.0.17" + fbjs "^3.0.0" + hoist-non-react-statics "^3.3.0" + invariant "^2.2.4" + prop-types "^15.7.2" react-native-reanimated@~1.1.0: version "1.1.0" @@ -4963,6 +5020,11 @@ toidentifier@1.0.0: resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= + trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" @@ -4983,6 +5045,11 @@ ua-parser-js@^0.7.18, ua-parser-js@^0.7.19: resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.20.tgz#7527178b82f6a62a0f243d1f94fd30e3e3c21098" integrity sha512-8OaIKfzL5cpx8eCMAhhvTlft8GYF8b2eQr6JkCyVdrgjcytyOmPCXrqXFcUnhonRpLlh5yxEZVohm6mzaowUOw== +ua-parser-js@^0.7.30: + version "0.7.31" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.31.tgz#649a656b191dffab4f21d5e053e27ca17cbff5c6" + integrity sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ== + uglify-es@^3.1.9: version "3.3.9" resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677" @@ -5168,11 +5235,24 @@ watch@~0.18.0: exec-sh "^0.2.0" minimist "^1.2.0" +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + whatwg-fetch@>=0.10.0: version "3.0.0" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"