@trycourier/courier-react-native 5.6.17 → 5.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (226) hide show
  1. package/README.md +66 -135
  2. package/android/build.gradle +1 -1
  3. package/android/src/main/java/com/courierreactnative/CourierClientModule.kt +1 -0
  4. package/android/src/main/java/com/courierreactnative/CourierInboxViewManager.kt +2 -0
  5. package/android/src/main/java/com/courierreactnative/CourierPreferencesViewManager.kt +2 -0
  6. package/android/src/main/java/com/courierreactnative/CourierSharedModule.kt +3 -0
  7. package/android/src/main/java/com/courierreactnative/Utils.kt +11 -1
  8. package/courier-react-native.podspec +1 -1
  9. package/ios/CourierClientModule.swift +1 -0
  10. package/ios/CourierInboxReactNativeManager.swift +8 -0
  11. package/ios/CourierPreferencesReactNativeManager.swift +8 -0
  12. package/ios/CourierReactNativeDelegate.m +1 -1
  13. package/ios/CourierReactNativeEventEmitter.swift +1 -1
  14. package/ios/CourierReactNativeModule.m +1 -0
  15. package/ios/CourierSharedModule.swift +10 -3
  16. package/ios/Utils.swift +10 -0
  17. package/lib/commonjs/Broadcaster.js +5 -5
  18. package/lib/commonjs/Broadcaster.js.map +1 -1
  19. package/lib/commonjs/CourierApiUrls.js +29 -0
  20. package/lib/commonjs/CourierApiUrls.js.map +1 -0
  21. package/lib/commonjs/Modules.js.map +1 -1
  22. package/lib/commonjs/client/BrandClient.js.map +1 -1
  23. package/lib/commonjs/client/ClientModule.js.map +1 -1
  24. package/lib/commonjs/client/CourierClient.js +4 -1
  25. package/lib/commonjs/client/CourierClient.js.map +1 -1
  26. package/lib/commonjs/client/InboxClient.js.map +1 -1
  27. package/lib/commonjs/client/PreferenceClient.js.map +1 -1
  28. package/lib/commonjs/client/TokenClient.js.map +1 -1
  29. package/lib/commonjs/client/TrackingClient.js.map +1 -1
  30. package/lib/commonjs/index.js +22 -2
  31. package/lib/commonjs/index.js.map +1 -1
  32. package/lib/commonjs/models/CourierAuthenticationListener.js.map +1 -1
  33. package/lib/commonjs/models/CourierPushListener.js.map +1 -1
  34. package/lib/commonjs/models/CourierUserPreferences.js +13 -13
  35. package/lib/commonjs/models/CourierUserPreferences.js.map +1 -1
  36. package/lib/commonjs/models/InboxAction.js.map +1 -1
  37. package/lib/commonjs/models/InboxMessage.js.map +1 -1
  38. package/lib/commonjs/utils.js.map +1 -1
  39. package/lib/commonjs/views/CourierInboxView.js +13 -13
  40. package/lib/commonjs/views/CourierInboxView.js.map +1 -1
  41. package/lib/commonjs/views/CourierPreferencesView.js +4 -4
  42. package/lib/commonjs/views/CourierPreferencesView.js.map +1 -1
  43. package/lib/module/Broadcaster.js +7 -7
  44. package/lib/module/Broadcaster.js.map +1 -1
  45. package/lib/module/CourierApiUrls.js +20 -0
  46. package/lib/module/CourierApiUrls.js.map +1 -0
  47. package/lib/module/Modules.js +1 -1
  48. package/lib/module/Modules.js.map +1 -1
  49. package/lib/module/client/BrandClient.js +1 -1
  50. package/lib/module/client/BrandClient.js.map +1 -1
  51. package/lib/module/client/ClientModule.js +1 -1
  52. package/lib/module/client/ClientModule.js.map +1 -1
  53. package/lib/module/client/CourierClient.js +10 -7
  54. package/lib/module/client/CourierClient.js.map +1 -1
  55. package/lib/module/client/InboxClient.js +1 -1
  56. package/lib/module/client/InboxClient.js.map +1 -1
  57. package/lib/module/client/PreferenceClient.js +1 -1
  58. package/lib/module/client/PreferenceClient.js.map +1 -1
  59. package/lib/module/client/TokenClient.js +1 -1
  60. package/lib/module/client/TokenClient.js.map +1 -1
  61. package/lib/module/client/TrackingClient.js +1 -1
  62. package/lib/module/client/TrackingClient.js.map +1 -1
  63. package/lib/module/index.js +5 -2
  64. package/lib/module/index.js.map +1 -1
  65. package/lib/module/models/CourierAuthenticationListener.js +1 -1
  66. package/lib/module/models/CourierAuthenticationListener.js.map +1 -1
  67. package/lib/module/models/CourierInboxListener.js +1 -1
  68. package/lib/module/models/CourierPushListener.js.map +1 -1
  69. package/lib/module/models/CourierUserPreferences.js +13 -13
  70. package/lib/module/models/CourierUserPreferences.js.map +1 -1
  71. package/lib/module/models/InboxAction.js.map +1 -1
  72. package/lib/module/models/InboxMessage.js +1 -1
  73. package/lib/module/models/InboxMessage.js.map +1 -1
  74. package/lib/module/utils.js.map +1 -1
  75. package/lib/module/views/CourierInboxView.js +18 -18
  76. package/lib/module/views/CourierInboxView.js.map +1 -1
  77. package/lib/module/views/CourierPreferencesView.js +7 -7
  78. package/lib/module/views/CourierPreferencesView.js.map +1 -1
  79. package/lib/typescript/src/Broadcaster.d.ts +7 -7
  80. package/lib/typescript/src/Broadcaster.d.ts.map +1 -1
  81. package/lib/typescript/src/CourierApiUrls.d.ts +11 -0
  82. package/lib/typescript/src/CourierApiUrls.d.ts.map +1 -0
  83. package/lib/typescript/src/Modules.d.ts.map +1 -1
  84. package/lib/typescript/src/client/BrandClient.d.ts +1 -1
  85. package/lib/typescript/src/client/BrandClient.d.ts.map +1 -1
  86. package/lib/typescript/src/client/ClientModule.d.ts +1 -1
  87. package/lib/typescript/src/client/ClientModule.d.ts.map +1 -1
  88. package/lib/typescript/src/client/CourierClient.d.ts +9 -6
  89. package/lib/typescript/src/client/CourierClient.d.ts.map +1 -1
  90. package/lib/typescript/src/client/InboxClient.d.ts +1 -1
  91. package/lib/typescript/src/client/InboxClient.d.ts.map +1 -1
  92. package/lib/typescript/src/client/PreferenceClient.d.ts +1 -1
  93. package/lib/typescript/src/client/PreferenceClient.d.ts.map +1 -1
  94. package/lib/typescript/src/client/TokenClient.d.ts +1 -1
  95. package/lib/typescript/src/client/TokenClient.d.ts.map +1 -1
  96. package/lib/typescript/src/client/TrackingClient.d.ts +1 -1
  97. package/lib/typescript/src/client/TrackingClient.d.ts.map +1 -1
  98. package/lib/typescript/src/index.d.ts +6 -2
  99. package/lib/typescript/src/index.d.ts.map +1 -1
  100. package/lib/typescript/src/models/Android_CourierSheet.d.ts +1 -1
  101. package/lib/typescript/src/models/Android_CourierSheet.d.ts.map +1 -1
  102. package/lib/typescript/src/models/CourierAuthenticationListener.d.ts +1 -1
  103. package/lib/typescript/src/models/CourierAuthenticationListener.d.ts.map +1 -1
  104. package/lib/typescript/src/models/CourierBrand.d.ts.map +1 -1
  105. package/lib/typescript/src/models/CourierButton.d.ts +1 -1
  106. package/lib/typescript/src/models/CourierButton.d.ts.map +1 -1
  107. package/lib/typescript/src/models/CourierFont.d.ts.map +1 -1
  108. package/lib/typescript/src/models/CourierInboxListener.d.ts +1 -1
  109. package/lib/typescript/src/models/CourierInboxMessages.d.ts +1 -1
  110. package/lib/typescript/src/models/CourierInboxTheme.d.ts +4 -3
  111. package/lib/typescript/src/models/CourierInboxTheme.d.ts.map +1 -1
  112. package/lib/typescript/src/models/CourierInfoViewStyle.d.ts +2 -2
  113. package/lib/typescript/src/models/CourierInfoViewStyle.d.ts.map +1 -1
  114. package/lib/typescript/src/models/CourierPreferencesTheme.d.ts +7 -6
  115. package/lib/typescript/src/models/CourierPreferencesTheme.d.ts.map +1 -1
  116. package/lib/typescript/src/models/CourierPushListener.d.ts.map +1 -1
  117. package/lib/typescript/src/models/CourierUserPreferences.d.ts +1 -1
  118. package/lib/typescript/src/models/CourierUserPreferences.d.ts.map +1 -1
  119. package/lib/typescript/src/models/InboxAction.d.ts.map +1 -1
  120. package/lib/typescript/src/models/InboxMessage.d.ts +1 -1
  121. package/lib/typescript/src/models/InboxMessage.d.ts.map +1 -1
  122. package/lib/typescript/src/models/InboxMessageEvent.d.ts.map +1 -1
  123. package/lib/typescript/src/models/InboxMessageSet.d.ts +1 -1
  124. package/lib/typescript/src/models/iOS_CourierCell.d.ts.map +1 -1
  125. package/lib/typescript/src/models/iOS_CourierSheet.d.ts +1 -1
  126. package/lib/typescript/src/models/iOS_CourierSheet.d.ts.map +1 -1
  127. package/lib/typescript/src/utils.d.ts.map +1 -1
  128. package/lib/typescript/src/views/CourierInboxView.d.ts +5 -5
  129. package/lib/typescript/src/views/CourierInboxView.d.ts.map +1 -1
  130. package/lib/typescript/src/views/CourierPreferencesView.d.ts +3 -3
  131. package/lib/typescript/src/views/CourierPreferencesView.d.ts.map +1 -1
  132. package/package.json +8 -4
  133. package/src/Broadcaster.tsx +21 -15
  134. package/src/CourierApiUrls.tsx +30 -0
  135. package/src/Modules.tsx +22 -13
  136. package/src/client/BrandClient.tsx +6 -6
  137. package/src/client/ClientModule.tsx +4 -6
  138. package/src/client/CourierClient.tsx +20 -13
  139. package/src/client/InboxClient.tsx +40 -13
  140. package/src/client/PreferenceClient.tsx +47 -21
  141. package/src/client/TokenClient.tsx +14 -7
  142. package/src/client/TrackingClient.tsx +7 -6
  143. package/src/index.tsx +208 -115
  144. package/src/models/Android_CourierSheet.tsx +5 -5
  145. package/src/models/CourierAuthenticationListener.tsx +5 -9
  146. package/src/models/CourierBrand.tsx +6 -6
  147. package/src/models/CourierButton.tsx +5 -5
  148. package/src/models/CourierDevice.tsx +1 -1
  149. package/src/models/CourierFont.tsx +4 -4
  150. package/src/models/CourierInboxListener.tsx +3 -3
  151. package/src/models/CourierInboxMessages.tsx +2 -2
  152. package/src/models/CourierInboxTheme.tsx +56 -42
  153. package/src/models/CourierInfoViewStyle.tsx +5 -5
  154. package/src/models/CourierPaging.tsx +1 -1
  155. package/src/models/CourierPreferencesTheme.tsx +33 -27
  156. package/src/models/CourierPushListener.tsx +9 -7
  157. package/src/models/CourierPushProvider.tsx +1 -1
  158. package/src/models/CourierTrackingEvent.tsx +6 -6
  159. package/src/models/CourierUserPreferences.tsx +32 -28
  160. package/src/models/InboxAction.tsx +2 -6
  161. package/src/models/InboxMessage.tsx +4 -5
  162. package/src/models/InboxMessageEvent.tsx +7 -1
  163. package/src/models/InboxMessageFeed.tsx +1 -1
  164. package/src/models/InboxMessageSet.tsx +1 -1
  165. package/src/models/iOS_CourierCell.tsx +10 -5
  166. package/src/models/iOS_CourierSheet.tsx +4 -4
  167. package/src/utils.tsx +4 -7
  168. package/src/views/CourierInboxView.tsx +79 -71
  169. package/src/views/CourierPreferencesView.tsx +34 -35
  170. package/lib/example/src/App.js +0 -11
  171. package/lib/example/src/Emitter.js +0 -11
  172. package/lib/example/src/Env.js +0 -6
  173. package/lib/example/src/Home.js +0 -67
  174. package/lib/example/src/Poke.js +0 -75
  175. package/lib/example/src/Tabs.js +0 -36
  176. package/lib/example/src/Utils.js +0 -71
  177. package/lib/example/src/pages/Auth.js +0 -224
  178. package/lib/example/src/pages/Inbox.js +0 -38
  179. package/lib/example/src/pages/Preferences.js +0 -13
  180. package/lib/example/src/pages/PreferencesStack.js +0 -11
  181. package/lib/example/src/pages/Push.js +0 -93
  182. package/lib/example/src/pages/Styles.js +0 -26
  183. package/lib/example/src/pages/Tests.js +0 -1068
  184. package/lib/example/src/pages/inbox/InboxCustom.js +0 -141
  185. package/lib/example/src/pages/inbox/InboxDefault.js +0 -22
  186. package/lib/example/src/pages/inbox/InboxStyled.js +0 -220
  187. package/lib/example/src/pages/preferences/PreferencesCustom.js +0 -91
  188. package/lib/example/src/pages/preferences/PreferencesDefault.js +0 -17
  189. package/lib/example/src/pages/preferences/PreferencesDetail.js +0 -127
  190. package/lib/example/src/pages/preferences/PreferencesStyled.js +0 -110
  191. package/lib/package.json +0 -171
  192. package/lib/src/Broadcaster.js +0 -24
  193. package/lib/src/Modules.js +0 -26
  194. package/lib/src/client/BrandClient.js +0 -17
  195. package/lib/src/client/ClientModule.js +0 -14
  196. package/lib/src/client/CourierClient.js +0 -31
  197. package/lib/src/client/InboxClient.js +0 -99
  198. package/lib/src/client/PreferenceClient.js +0 -63
  199. package/lib/src/client/TokenClient.js +0 -27
  200. package/lib/src/client/TrackingClient.js +0 -17
  201. package/lib/src/index.js +0 -567
  202. package/lib/src/models/Android_CourierSheet.js +0 -1
  203. package/lib/src/models/CourierAuthenticationListener.js +0 -14
  204. package/lib/src/models/CourierBrand.js +0 -1
  205. package/lib/src/models/CourierButton.js +0 -1
  206. package/lib/src/models/CourierDevice.js +0 -1
  207. package/lib/src/models/CourierFont.js +0 -1
  208. package/lib/src/models/CourierInboxListener.js +0 -20
  209. package/lib/src/models/CourierInboxMessages.js +0 -1
  210. package/lib/src/models/CourierInboxTheme.js +0 -1
  211. package/lib/src/models/CourierInfoViewStyle.js +0 -1
  212. package/lib/src/models/CourierPaging.js +0 -1
  213. package/lib/src/models/CourierPreferencesTheme.js +0 -1
  214. package/lib/src/models/CourierPushListener.js +0 -14
  215. package/lib/src/models/CourierPushProvider.js +0 -8
  216. package/lib/src/models/CourierTrackingEvent.js +0 -8
  217. package/lib/src/models/CourierUserPreferences.js +0 -51
  218. package/lib/src/models/InboxAction.js +0 -1
  219. package/lib/src/models/InboxMessage.js +0 -1
  220. package/lib/src/models/InboxMessageFeed.js +0 -1
  221. package/lib/src/models/InboxMessageSet.js +0 -1
  222. package/lib/src/models/iOS_CourierCell.js +0 -1
  223. package/lib/src/models/iOS_CourierSheet.js +0 -1
  224. package/lib/src/utils.js +0 -27
  225. package/lib/src/views/CourierInboxView.js +0 -75
  226. package/lib/src/views/CourierPreferencesView.js +0 -33
@@ -1,51 +0,0 @@
1
- // Additional interfaces for CourierUserPreferencesStatus and CourierUserPreferencesChannel would be needed based on their definitions
2
- export var CourierUserPreferencesStatus;
3
- (function (CourierUserPreferencesStatus) {
4
- CourierUserPreferencesStatus["OptedIn"] = "OPTED_IN";
5
- CourierUserPreferencesStatus["OptedOut"] = "OPTED_OUT";
6
- CourierUserPreferencesStatus["Required"] = "REQUIRED";
7
- CourierUserPreferencesStatus["Unknown"] = "UNKNOWN";
8
- })(CourierUserPreferencesStatus || (CourierUserPreferencesStatus = {}));
9
- // Function to get the title of the enum value
10
- export function getCourierUserPreferencesStatusTitle(status) {
11
- switch (status) {
12
- case CourierUserPreferencesStatus.OptedIn:
13
- return "Opted In";
14
- case CourierUserPreferencesStatus.OptedOut:
15
- return "Opted Out";
16
- case CourierUserPreferencesStatus.Required:
17
- return "Required";
18
- case CourierUserPreferencesStatus.Unknown:
19
- return "Unknown";
20
- default:
21
- return "Unknown";
22
- }
23
- }
24
- export var CourierUserPreferencesChannel;
25
- (function (CourierUserPreferencesChannel) {
26
- CourierUserPreferencesChannel["DirectMessage"] = "direct_message";
27
- CourierUserPreferencesChannel["Email"] = "email";
28
- CourierUserPreferencesChannel["Push"] = "push";
29
- CourierUserPreferencesChannel["Sms"] = "sms";
30
- CourierUserPreferencesChannel["Webhook"] = "webhook";
31
- CourierUserPreferencesChannel["Unknown"] = "unknown";
32
- })(CourierUserPreferencesChannel || (CourierUserPreferencesChannel = {}));
33
- // Function to get the title of the enum value
34
- export function getCourierUserPreferencesChannelTitle(channel) {
35
- switch (channel) {
36
- case CourierUserPreferencesChannel.DirectMessage:
37
- return "In App Messages";
38
- case CourierUserPreferencesChannel.Email:
39
- return "Emails";
40
- case CourierUserPreferencesChannel.Push:
41
- return "Push Notifications";
42
- case CourierUserPreferencesChannel.Sms:
43
- return "Text Messages";
44
- case CourierUserPreferencesChannel.Webhook:
45
- return "Webhooks";
46
- case CourierUserPreferencesChannel.Unknown:
47
- return "Unknown";
48
- default:
49
- return "Unknown";
50
- }
51
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
package/lib/src/utils.js DELETED
@@ -1,27 +0,0 @@
1
- import packageJson from '../package.json';
2
- export var Events;
3
- (function (Events) {
4
- let Log;
5
- (function (Log) {
6
- Log.DEBUG_LOG = 'courierDebugEvent';
7
- })(Log = Events.Log || (Events.Log = {}));
8
- let Push;
9
- (function (Push) {
10
- Push.CLICKED = 'pushNotificationClicked';
11
- Push.DELIVERED = 'pushNotificationDelivered';
12
- })(Push = Events.Push || (Events.Push = {}));
13
- })(Events || (Events = {}));
14
- export class CourierUtils {
15
- static generateUUID() {
16
- let uuid = '';
17
- const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
18
- const charactersLength = characters.length;
19
- for (let i = 0; i < 16; i++) {
20
- uuid += characters.charAt(Math.floor(Math.random() * charactersLength));
21
- }
22
- return uuid;
23
- }
24
- static getPackageVersion() {
25
- return packageJson.version;
26
- }
27
- }
@@ -1,75 +0,0 @@
1
- import React, { useEffect } from "react";
2
- import { Platform, DeviceEventEmitter } from "react-native";
3
- import { Modules } from "../Modules";
4
- const CourierInbox = Modules.getNativeComponent('CourierInboxView');
5
- export const CourierInboxView = (props) => {
6
- let onClickInboxMessageAtIndexListener = undefined;
7
- let onLongPressInboxMessageAtIndexListener = undefined;
8
- let onClickInboxActionForMessageAtIndexListener = undefined;
9
- let onScrollInboxListener = undefined;
10
- useEffect(() => {
11
- return () => {
12
- onClickInboxMessageAtIndexListener?.remove();
13
- onLongPressInboxMessageAtIndexListener?.remove();
14
- onClickInboxActionForMessageAtIndexListener?.remove();
15
- onScrollInboxListener?.remove();
16
- };
17
- }, []);
18
- useEffect(() => {
19
- onClickInboxMessageAtIndexListener?.remove();
20
- if (Platform.OS === 'android' && props.onClickInboxMessageAtIndex) {
21
- onClickInboxMessageAtIndexListener = DeviceEventEmitter.addListener('courierClickMessageAtIndex', onClickInboxMessageAtIndex);
22
- }
23
- }, [props.onClickInboxMessageAtIndex]);
24
- const onClickInboxMessageAtIndex = (event) => {
25
- // Parse the native event data
26
- if (props.onClickInboxMessageAtIndex) {
27
- const index = event["index"];
28
- const message = JSON.parse(event["message"]);
29
- props.onClickInboxMessageAtIndex(message, index);
30
- }
31
- };
32
- useEffect(() => {
33
- onLongPressInboxMessageAtIndexListener?.remove();
34
- if (Platform.OS === 'android' && props.onLongPressInboxMessageAtIndex) {
35
- onLongPressInboxMessageAtIndexListener = DeviceEventEmitter.addListener('courierLongPressMessageAtIndex', onLongPressInboxMessageAtIndex);
36
- }
37
- }, [props.onLongPressInboxMessageAtIndex]);
38
- const onLongPressInboxMessageAtIndex = (event) => {
39
- // Parse the native event data
40
- if (props.onLongPressInboxMessageAtIndex) {
41
- const index = event["index"];
42
- const message = JSON.parse(event["message"]);
43
- props.onLongPressInboxMessageAtIndex(message, index);
44
- }
45
- };
46
- useEffect(() => {
47
- onClickInboxActionForMessageAtIndexListener?.remove();
48
- if (Platform.OS === 'android' && props.onClickInboxActionForMessageAtIndex) {
49
- onClickInboxActionForMessageAtIndexListener = DeviceEventEmitter.addListener('courierClickActionAtIndex', onClickInboxActionForMessageAtIndex);
50
- }
51
- }, [props.onClickInboxActionForMessageAtIndex]);
52
- const onClickInboxActionForMessageAtIndex = (event) => {
53
- // Parse the native event data
54
- if (props.onClickInboxActionForMessageAtIndex) {
55
- const index = event["index"];
56
- const action = JSON.parse(event["action"]);
57
- const message = JSON.parse(event["message"]);
58
- props.onClickInboxActionForMessageAtIndex(action, message, index);
59
- }
60
- };
61
- useEffect(() => {
62
- onScrollInboxListener?.remove();
63
- if (Platform.OS === 'android' && props.onScrollInbox) {
64
- onScrollInboxListener = DeviceEventEmitter.addListener('courierScrollInbox', onScrollInbox);
65
- }
66
- }, [props.onScrollInbox]);
67
- const onScrollInbox = (event) => {
68
- // Parse the native event data
69
- if (props.onScrollInbox) {
70
- const contentOffset = event["contentOffset"];
71
- props.onScrollInbox(contentOffset["y"], contentOffset["x"]);
72
- }
73
- };
74
- return (React.createElement(CourierInbox, { canSwipePages: props.canSwipePages ?? false, theme: props.theme ?? { light: undefined, dark: undefined }, onClickInboxMessageAtIndex: (event) => onClickInboxMessageAtIndex(event.nativeEvent), onLongPressInboxMessageAtIndex: (event) => onLongPressInboxMessageAtIndex(event.nativeEvent), onClickInboxActionForMessageAtIndex: (event) => onClickInboxActionForMessageAtIndex(event.nativeEvent), onScrollInbox: (event) => onScrollInbox(event.nativeEvent), style: props.style }));
75
- };
@@ -1,33 +0,0 @@
1
- import React, { useEffect } from "react";
2
- import { DeviceEventEmitter, Platform } from "react-native";
3
- import { Modules } from "../Modules";
4
- const CourierPreferences = Modules.getNativeComponent('CourierPreferencesView');
5
- export const CourierPreferencesView = (props) => {
6
- let onScrollPreferencesListener = undefined;
7
- useEffect(() => {
8
- return () => {
9
- onScrollPreferencesListener?.remove();
10
- };
11
- }, []);
12
- useEffect(() => {
13
- onScrollPreferencesListener?.remove();
14
- if (Platform.OS === 'android' && props.onScrollPreferences) {
15
- onScrollPreferencesListener = DeviceEventEmitter.addListener('courierScrollPreferences', onScrollPreferences);
16
- }
17
- }, [props.onScrollPreferences]);
18
- const onScrollPreferences = (event) => {
19
- // Parse the native event data
20
- if (props.onScrollPreferences) {
21
- const contentOffset = event["contentOffset"];
22
- props.onScrollPreferences(contentOffset["y"], contentOffset["x"]);
23
- }
24
- };
25
- const onPreferenceError = (event) => {
26
- // Parse the native event data
27
- if (props.onPreferenceError) {
28
- const message = event["error"];
29
- props.onPreferenceError(message);
30
- }
31
- };
32
- return (React.createElement(CourierPreferences, { mode: props.mode, theme: props.theme ?? { light: undefined, dark: undefined }, onScrollPreferences: (event) => onScrollPreferences(event.nativeEvent), onPreferenceError: (event) => onPreferenceError(event.nativeEvent), style: props.style }));
33
- };