@trycourier/courier-react-native 2.0.0-beta1 → 2.0.0-beta3

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 (47) hide show
  1. package/ios/CourierReactNative-Bridging-Header.h +1 -0
  2. package/ios/CourierReactNative.xcodeproj/project.pbxproj +5 -3
  3. package/ios/CourierReactNative.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  4. package/ios/CourierReactNative.xcodeproj/project.xcworkspace/xcuserdata/mike.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  5. package/ios/CourierReactNative.xcodeproj/xcuserdata/mike.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
  6. package/ios/CourierReactNativeDelegate.h +18 -0
  7. package/ios/CourierReactNativeDelegate.m +125 -0
  8. package/ios/CourierReactNativeModule.m +54 -2
  9. package/ios/CourierReactNativeModule.swift +104 -70
  10. package/ios/CourierReactNativeViewManager.m +1 -3
  11. package/ios/CourierReactNativeViewManager.swift +14 -18
  12. package/lib/commonjs/hooks/useCourier.js +224 -0
  13. package/lib/commonjs/hooks/useCourier.js.map +1 -0
  14. package/lib/commonjs/index.js +215 -13
  15. package/lib/commonjs/index.js.map +1 -1
  16. package/lib/commonjs/models/CourierAuthenticationListener.js +21 -0
  17. package/lib/commonjs/models/CourierAuthenticationListener.js.map +1 -0
  18. package/lib/commonjs/models/CourierPushListener.js +15 -0
  19. package/lib/commonjs/models/CourierPushListener.js.map +1 -0
  20. package/lib/commonjs/views/CourierInboxView.js +4 -2
  21. package/lib/commonjs/views/CourierInboxView.js.map +1 -1
  22. package/lib/module/hooks/useCourier.js +213 -0
  23. package/lib/module/hooks/useCourier.js.map +1 -0
  24. package/lib/module/index.js +188 -14
  25. package/lib/module/index.js.map +1 -1
  26. package/lib/module/models/CourierAuthenticationListener.js +13 -0
  27. package/lib/module/models/CourierAuthenticationListener.js.map +1 -0
  28. package/lib/module/models/CourierPushListener.js +8 -0
  29. package/lib/module/models/CourierPushListener.js.map +1 -0
  30. package/lib/module/views/CourierInboxView.js +4 -2
  31. package/lib/module/views/CourierInboxView.js.map +1 -1
  32. package/lib/typescript/hooks/useCourier.d.ts +52 -0
  33. package/lib/typescript/hooks/useCourier.d.ts.map +1 -0
  34. package/lib/typescript/index.d.ts +96 -2
  35. package/lib/typescript/index.d.ts.map +1 -1
  36. package/lib/typescript/models/CourierAuthenticationListener.d.ts +7 -0
  37. package/lib/typescript/models/CourierAuthenticationListener.d.ts.map +1 -0
  38. package/lib/typescript/models/CourierPushListener.d.ts +7 -0
  39. package/lib/typescript/models/CourierPushListener.d.ts.map +1 -0
  40. package/lib/typescript/views/CourierInboxView.d.ts +4 -2
  41. package/lib/typescript/views/CourierInboxView.d.ts.map +1 -1
  42. package/package.json +1 -1
  43. package/src/hooks/useCourier.tsx +291 -0
  44. package/src/index.tsx +208 -15
  45. package/src/models/CourierAuthenticationListener.tsx +19 -0
  46. package/src/models/CourierPushListener.tsx +13 -0
  47. package/src/views/CourierInboxView.tsx +5 -4
@@ -0,0 +1,213 @@
1
+ import React, { createContext, useContext, useEffect, useState } from 'react';
2
+ import Courier from '..';
3
+ let authListener = undefined;
4
+ let pushListener = undefined;
5
+ let inboxListener = undefined;
6
+ const CourierContext = /*#__PURE__*/createContext(undefined);
7
+ export const CourierProvider = _ref => {
8
+ let {
9
+ listeners,
10
+ children
11
+ } = _ref;
12
+ // Auth
13
+ const [auth_userId, auth_setUserId] = useState(undefined);
14
+ const [auth_isLoading, auth_setIsLoading] = useState(false);
15
+ const [auth_error, auth_setError] = useState(undefined);
16
+
17
+ // Push
18
+ const [push_pushNotificationDelivered, inbox_setPushNotificationDelivered] = useState(undefined);
19
+ const [push_pushNotificationClicked, inbox_setPushNotificationClicked] = useState(undefined);
20
+ const [push_apnsToken, push_setApnsToken] = useState(undefined);
21
+ const [push_fcmToken, push_setFcmToken] = useState(undefined);
22
+ const [push_notificationPermission, push_setNotificationPermission] = useState(undefined);
23
+
24
+ // Inbox
25
+ const [inbox_isLoading, inbox_setIsLoading] = useState(false);
26
+ const [inbox_isRefreshing, inbox_setIsRefreshing] = useState(false);
27
+ const [inbox_error, inbox_setError] = useState(undefined);
28
+ const [inbox_messages, inbox_setMessages] = useState([]);
29
+ const [inbox_unreadMessageCount, inbox_setUnreadMessageCount] = useState(0);
30
+ const [inbox_totalMessageCount, inbox_setTotalMessageCount] = useState(0);
31
+ const [inbox_canPaginate, inbox_setCanPaginate] = useState(false);
32
+ useEffect(() => {
33
+ // Get the initial values
34
+ const userId = Courier.shared.userId;
35
+ auth_setUserId(userId);
36
+
37
+ // Permissions
38
+ syncNotificationPermissions();
39
+
40
+ // Push tokens
41
+ syncTokens();
42
+ }, []);
43
+ useEffect(() => {
44
+ var _authListener, _pushListener, _inboxListener;
45
+ (_authListener = authListener) === null || _authListener === void 0 ? void 0 : _authListener.remove();
46
+ (_pushListener = pushListener) === null || _pushListener === void 0 ? void 0 : _pushListener.remove();
47
+ (_inboxListener = inboxListener) === null || _inboxListener === void 0 ? void 0 : _inboxListener.remove();
48
+
49
+ // Push
50
+ if (listeners.includes('auth')) {
51
+ authListener = Courier.shared.addAuthenticationListener({
52
+ onUserChanged: userId => {
53
+ auth_setUserId(userId);
54
+ }
55
+ });
56
+ }
57
+
58
+ // Push
59
+ if (listeners.includes('push')) {
60
+ pushListener = Courier.shared.addPushNotificationListener({
61
+ onPushNotificationDelivered: push => inbox_setPushNotificationDelivered(push),
62
+ onPushNotificationClicked: push => inbox_setPushNotificationClicked(push)
63
+ });
64
+ }
65
+
66
+ // Inbox
67
+ if (listeners.includes('inbox')) {
68
+ inboxListener = Courier.shared.addInboxListener({
69
+ onInitialLoad: () => {
70
+ inbox_setIsLoading(true);
71
+ inbox_setError(undefined);
72
+ },
73
+ onError: error => {
74
+ inbox_setIsLoading(false);
75
+ inbox_setError(error);
76
+ },
77
+ onMessagesChanged: (messages, unreadMessageCount, totalMessageCount, canPaginate) => {
78
+ inbox_setIsLoading(false);
79
+ inbox_setError(undefined);
80
+ inbox_setMessages(messages);
81
+ inbox_setUnreadMessageCount(unreadMessageCount);
82
+ inbox_setTotalMessageCount(totalMessageCount);
83
+ inbox_setCanPaginate(canPaginate);
84
+ }
85
+ });
86
+ }
87
+ return () => {
88
+ var _authListener2, _pushListener2, _inboxListener2;
89
+ (_authListener2 = authListener) === null || _authListener2 === void 0 ? void 0 : _authListener2.remove();
90
+ (_pushListener2 = pushListener) === null || _pushListener2 === void 0 ? void 0 : _pushListener2.remove();
91
+ (_inboxListener2 = inboxListener) === null || _inboxListener2 === void 0 ? void 0 : _inboxListener2.remove();
92
+ };
93
+ }, [listeners]);
94
+ const signIn = async props => {
95
+ auth_setIsLoading(true);
96
+ auth_setError(undefined);
97
+ try {
98
+ await Courier.shared.signIn(props);
99
+ } catch (error) {
100
+ auth_setError(error);
101
+ }
102
+ auth_setIsLoading(false);
103
+ };
104
+ const signOut = async () => {
105
+ auth_setIsLoading(true);
106
+ auth_setError(undefined);
107
+ try {
108
+ await Courier.shared.signOut();
109
+ } catch (error) {
110
+ auth_setError(error);
111
+ }
112
+ auth_setIsLoading(false);
113
+ };
114
+ const syncNotificationPermissions = async () => {
115
+ const status = await Courier.shared.getNotificationPermissionStatus();
116
+ push_setNotificationPermission(status);
117
+ };
118
+ const syncTokens = () => {
119
+ // APNS
120
+ const apnsToken = Courier.shared.apnsToken;
121
+ push_setApnsToken(apnsToken);
122
+ const fcmToken = Courier.shared.fcmToken;
123
+ push_setFcmToken(fcmToken);
124
+ };
125
+ const requestNotificationPermission = async () => {
126
+ const status = await Courier.shared.requestNotificationPermission();
127
+ push_setNotificationPermission(status);
128
+ };
129
+ const setPaginationLimit = limit => {
130
+ Courier.shared.setInboxPaginationLimit({
131
+ limit
132
+ });
133
+ };
134
+ const fetchNextPageOfMessages = () => {
135
+ return Courier.shared.fetchNextPageOfMessages();
136
+ };
137
+ const refresh = async () => {
138
+ inbox_setIsRefreshing(true);
139
+ await Courier.shared.refreshInbox();
140
+ inbox_setIsRefreshing(false);
141
+ };
142
+ const readAllMessages = () => {
143
+ // Skip if no user is found
144
+ if (!Courier.shared.userId) {
145
+ return Promise.resolve();
146
+ }
147
+
148
+ // Read the messages
149
+ return Courier.shared.readAllInboxMessages();
150
+ };
151
+ const readMessage = messageId => {
152
+ return Courier.shared.readMessage({
153
+ messageId
154
+ });
155
+ };
156
+ const unreadMessage = messageId => {
157
+ return Courier.shared.unreadMessage({
158
+ messageId
159
+ });
160
+ };
161
+ return /*#__PURE__*/React.createElement(CourierContext.Provider, {
162
+ value: {
163
+ auth: {
164
+ isLoading: auth_isLoading,
165
+ error: auth_error,
166
+ userId: auth_userId,
167
+ signIn,
168
+ signOut
169
+ },
170
+ push: {
171
+ delivered: push_pushNotificationDelivered,
172
+ clicked: push_pushNotificationClicked,
173
+ tokens: {
174
+ fcm: push_fcmToken,
175
+ apns: push_apnsToken
176
+ },
177
+ notificationPermissionStatus: push_notificationPermission,
178
+ requestNotificationPermission
179
+ },
180
+ inbox: {
181
+ isLoading: inbox_isLoading,
182
+ error: inbox_error,
183
+ messages: inbox_messages,
184
+ unreadMessageCount: inbox_unreadMessageCount,
185
+ totalMessageCount: inbox_totalMessageCount,
186
+ canPaginate: inbox_canPaginate,
187
+ setPaginationLimit,
188
+ fetchNextPageOfMessages,
189
+ refresh,
190
+ isRefreshing: inbox_isRefreshing,
191
+ readAllMessages,
192
+ readMessage,
193
+ unreadMessage
194
+ }
195
+ }
196
+ }, children);
197
+ };
198
+ export const useCourier = function () {
199
+ var _props$inbox;
200
+ let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
201
+ const context = useContext(CourierContext);
202
+ if (!context) {
203
+ throw new Error('useCourier must be used within an CourierProvider');
204
+ }
205
+
206
+ // Set the initial pagination limit if needed
207
+ if ((_props$inbox = props.inbox) !== null && _props$inbox !== void 0 && _props$inbox.paginationLimit) {
208
+ var _context$inbox, _props$inbox2;
209
+ (_context$inbox = context.inbox) === null || _context$inbox === void 0 ? void 0 : _context$inbox.setPaginationLimit((_props$inbox2 = props.inbox) === null || _props$inbox2 === void 0 ? void 0 : _props$inbox2.paginationLimit);
210
+ }
211
+ return context;
212
+ };
213
+ //# sourceMappingURL=useCourier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","createContext","useContext","useEffect","useState","Courier","authListener","undefined","pushListener","inboxListener","CourierContext","CourierProvider","_ref","listeners","children","auth_userId","auth_setUserId","auth_isLoading","auth_setIsLoading","auth_error","auth_setError","push_pushNotificationDelivered","inbox_setPushNotificationDelivered","push_pushNotificationClicked","inbox_setPushNotificationClicked","push_apnsToken","push_setApnsToken","push_fcmToken","push_setFcmToken","push_notificationPermission","push_setNotificationPermission","inbox_isLoading","inbox_setIsLoading","inbox_isRefreshing","inbox_setIsRefreshing","inbox_error","inbox_setError","inbox_messages","inbox_setMessages","inbox_unreadMessageCount","inbox_setUnreadMessageCount","inbox_totalMessageCount","inbox_setTotalMessageCount","inbox_canPaginate","inbox_setCanPaginate","userId","shared","syncNotificationPermissions","syncTokens","_authListener","_pushListener","_inboxListener","remove","includes","addAuthenticationListener","onUserChanged","addPushNotificationListener","onPushNotificationDelivered","push","onPushNotificationClicked","addInboxListener","onInitialLoad","onError","error","onMessagesChanged","messages","unreadMessageCount","totalMessageCount","canPaginate","_authListener2","_pushListener2","_inboxListener2","signIn","props","signOut","status","getNotificationPermissionStatus","apnsToken","fcmToken","requestNotificationPermission","setPaginationLimit","limit","setInboxPaginationLimit","fetchNextPageOfMessages","refresh","refreshInbox","readAllMessages","Promise","resolve","readAllInboxMessages","readMessage","messageId","unreadMessage","createElement","Provider","value","auth","isLoading","delivered","clicked","tokens","fcm","apns","notificationPermissionStatus","inbox","isRefreshing","useCourier","_props$inbox","arguments","length","context","Error","paginationLimit","_context$inbox","_props$inbox2"],"sourceRoot":"../../../src","sources":["hooks/useCourier.tsx"],"mappings":"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"}
@@ -1,6 +1,15 @@
1
- import { NativeModules, NativeEventEmitter, Platform } from 'react-native';
1
+ import { NativeModules, NativeEventEmitter, Platform, DeviceEventEmitter } from 'react-native';
2
+
3
+ // Imports
2
4
  import { CourierInboxListener } from './models/CourierInboxListener';
5
+ import { CourierPushListener } from './models/CourierPushListener';
6
+ import { CourierAuthenticationListener } from './models/CourierAuthenticationListener';
7
+ // Exports
3
8
  export { CourierInboxView } from './views/CourierInboxView';
9
+ export { CourierProvider, useCourier } from './hooks/useCourier';
10
+ export { CourierInboxListener } from './models/CourierInboxListener';
11
+ export { CourierPushListener } from './models/CourierPushListener';
12
+ export { CourierAuthenticationListener } from './models/CourierAuthenticationListener';
4
13
  const LINKING_ERROR = `The package '@trycourier/courier-react-native' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
5
14
  ios: "- You have run 'pod install'\n",
6
15
  default: ''
@@ -12,6 +21,8 @@ const CourierReactNativeModules = NativeModules.CourierReactNativeModule ? Nativ
12
21
  });
13
22
  const CourierEventEmitter = new NativeEventEmitter(NativeModules.CourierReactNativeModule);
14
23
  class Courier {
24
+ PUSH_NOTIFICATION_CLICKED = 'pushNotificationClicked';
25
+ PUSH_NOTIFICATION_DELIVERED = 'pushNotificationDelivered';
15
26
  _isDebugging = false;
16
27
  constructor() {
17
28
  // Sets the initial SDK values
@@ -28,15 +39,10 @@ class Courier {
28
39
  return this._sharedInstance;
29
40
  }
30
41
  async setDefaults() {
31
- try {
32
- await Promise.all([this.setIsDebugging(__DEV__)
33
- // this.iOSForegroundPresentationOptions({
34
- // options: ['sound', 'badge', 'list', 'banner'],
35
- // }),
36
- ]);
37
- } catch (error) {
38
- console.log(error);
39
- }
42
+ this.setIsDebugging(__DEV__);
43
+ this.iOSForegroundPresentationOptions({
44
+ options: ['sound', 'badge', 'list', 'banner']
45
+ });
40
46
  }
41
47
 
42
48
  /**
@@ -44,7 +50,7 @@ class Courier {
44
50
  * Defaults to the React __DEV__ mode
45
51
  * @example Courier.setIsDebugging(true)
46
52
  */
47
- async setIsDebugging(isDebugging) {
53
+ setIsDebugging(isDebugging) {
48
54
  var _this$debugListener;
49
55
  // Remove the existing listener if needed
50
56
  (_this$debugListener = this.debugListener) === null || _this$debugListener === void 0 ? void 0 : _this$debugListener.remove();
@@ -56,19 +62,137 @@ class Courier {
56
62
  console.log('\x1b[36m%s\x1b[0m', 'COURIER', event);
57
63
  });
58
64
  }
59
- this._isDebugging = await CourierReactNativeModules.setDebugMode(isDebugging);
65
+ CourierReactNativeModules.setDebugMode(isDebugging);
66
+ this._isDebugging = isDebugging;
60
67
  return this._isDebugging;
61
68
  }
62
69
  get isDebugging() {
63
70
  return this._isDebugging;
64
71
  }
65
72
 
73
+ /**
74
+ * TODO
75
+ * @param props
76
+ * @returns
77
+ */
78
+ iOSForegroundPresentationOptions(props) {
79
+ // Only works on iOS
80
+ if (Platform.OS !== 'ios') return 'unsupported';
81
+ const normalizedParams = Array.from(new Set(props.options));
82
+ return CourierReactNativeModules.iOSForegroundPresentationOptions({
83
+ options: normalizedParams
84
+ });
85
+ }
86
+
87
+ /**
88
+ * Sets the current Apple Push Notification Service (APNS) token
89
+ * using Courier token management apis
90
+ * @example const apnsToken = await Courier.apnsToken
91
+ */
92
+ get apnsToken() {
93
+ if (Platform.OS !== 'ios') return undefined;
94
+ return CourierReactNativeModules.getApnsToken();
95
+ }
96
+
97
+ /**
98
+ * Sets the current Firebase Cloud Messaging (FCM) token
99
+ * using Courier token management apis
100
+ * @example const fcmToken = await Courier.fcmToken
101
+ */
102
+ get fcmToken() {
103
+ return CourierReactNativeModules.getFcmToken();
104
+ }
105
+
106
+ /**
107
+ * Sets the current Firebase Cloud Messaging (FCM) token
108
+ * using Courier token management apis
109
+ * @example await setFcmToken('asdf...asdf')
110
+ */
111
+ setFcmToken(props) {
112
+ return CourierReactNativeModules.setFcmToken(props.token);
113
+ }
114
+
115
+ /**
116
+ * Gets notification permission status at a system level.
117
+ * @example const permissionStatus = await Courier.getNotificationPermissionStatus()
118
+ */
119
+ getNotificationPermissionStatus() {
120
+ return CourierReactNativeModules.getNotificationPermissionStatus();
121
+ }
122
+
123
+ /**
124
+ * Requests notification permission status at a system level.
125
+ * Returns the string associated with the permission status.
126
+ * Will return the current status and will not present a popup
127
+ * if the user has already been asked for permission.
128
+ * @example const permissionStatus = await Courier.requestNotificationPermission()
129
+ */
130
+ requestNotificationPermission() {
131
+ return CourierReactNativeModules.requestNotificationPermission();
132
+ }
133
+
134
+ /**
135
+ * @example
136
+ TODO
137
+ * @returns function that can be used to unsubscribe from registered listeners
138
+ */
139
+ addPushNotificationListener(props) {
140
+ const pushListener = new CourierPushListener();
141
+ if (Platform.OS === 'android') {
142
+ if (props.onPushNotificationClicked) {
143
+ pushListener.onNotificationClickedListener = DeviceEventEmitter.addListener(this.PUSH_NOTIFICATION_CLICKED, event => {
144
+ try {
145
+ props.onPushNotificationClicked(JSON.parse(event));
146
+ } catch (error) {
147
+ console.log(error);
148
+ }
149
+ });
150
+ }
151
+ if (props.onPushNotificationDelivered) {
152
+ pushListener.onNotificationDeliveredListener = DeviceEventEmitter.addListener(this.PUSH_NOTIFICATION_DELIVERED, event => {
153
+ try {
154
+ props.onPushNotificationDelivered(JSON.parse(event));
155
+ } catch (error) {
156
+ console.log(error);
157
+ }
158
+ });
159
+ }
160
+ }
161
+ if (Platform.OS === 'ios') {
162
+ if (props.onPushNotificationClicked) {
163
+ pushListener.onNotificationClickedListener = CourierEventEmitter.addListener(this.PUSH_NOTIFICATION_CLICKED, event => {
164
+ try {
165
+ props.onPushNotificationClicked(JSON.parse(event));
166
+ } catch (error) {
167
+ console.log(error);
168
+ }
169
+ });
170
+ }
171
+ if (props.onPushNotificationDelivered) {
172
+ pushListener.onNotificationDeliveredListener = CourierEventEmitter.addListener(this.PUSH_NOTIFICATION_DELIVERED, event => {
173
+ try {
174
+ props.onPushNotificationDelivered(JSON.parse(event));
175
+ } catch (error) {
176
+ console.log(error);
177
+ }
178
+ });
179
+ }
180
+ }
181
+
182
+ // When listener is registered
183
+ // Attempt to fetch the last message that was clicked
184
+ // This is needed for when the app is killed and the
185
+ // user launched the app by clicking on a notifications
186
+ CourierReactNativeModules.registerPushNotificationClickedOnKilledState();
187
+ return pushListener;
188
+ }
189
+
66
190
  /**
67
191
  * Returns the current user id stored in local native storage
68
192
  * @example const userId = await Courier.userId
69
193
  */
70
194
  get userId() {
71
- return CourierReactNativeModules.getUserId();
195
+ return CourierReactNativeModules.getUserId() ?? undefined;
72
196
  }
73
197
 
74
198
  /**
@@ -91,6 +215,38 @@ class Courier {
91
215
  return CourierReactNativeModules.signIn(props.accessToken, props.clientKey ?? null, props.userId);
92
216
  }
93
217
 
218
+ /**
219
+ * TODO
220
+ * @param props
221
+ * @returns
222
+ */
223
+ signOut() {
224
+ return CourierReactNativeModules.signOut();
225
+ }
226
+
227
+ /**
228
+ * TODO
229
+ * @param props
230
+ * @returns
231
+ */
232
+ addAuthenticationListener(props) {
233
+ const authListener = new CourierAuthenticationListener();
234
+ authListener.onUserChanged = CourierEventEmitter.addListener('courierAuthUserChanged', event => {
235
+ props.onUserChanged(event);
236
+ });
237
+ authListener.listenerId = CourierReactNativeModules.addAuthenticationListener();
238
+ return authListener;
239
+ }
240
+
241
+ /**
242
+ * TODO
243
+ * @param props
244
+ * @returns
245
+ */
246
+ removeAuthenticationListener(props) {
247
+ return CourierReactNativeModules.removeAuthenticationListener(props.listenerId);
248
+ }
249
+
94
250
  /**
95
251
  * TODO
96
252
  * @param props
@@ -141,7 +297,7 @@ class Courier {
141
297
  props.onMessagesChanged(event.messages, event.unreadMessageCount, event.totalMessageCount, event.canPaginate);
142
298
  });
143
299
  }
144
- inboxListener.listenerId = CourierReactNativeModules.addInboxListener(null);
300
+ inboxListener.listenerId = CourierReactNativeModules.addInboxListener();
145
301
  return inboxListener;
146
302
  }
147
303
 
@@ -162,6 +318,24 @@ class Courier {
162
318
  async refreshInbox() {
163
319
  return CourierReactNativeModules.refreshInbox();
164
320
  }
321
+
322
+ /**
323
+ * TODO
324
+ * @param props
325
+ * @returns
326
+ */
327
+ async fetchNextPageOfMessages() {
328
+ return CourierReactNativeModules.fetchNextPageOfMessages();
329
+ }
330
+
331
+ /**
332
+ * TODO
333
+ * @param props
334
+ * @returns
335
+ */
336
+ setInboxPaginationLimit(props) {
337
+ CourierReactNativeModules.setInboxPaginationLimit(props.limit);
338
+ }
165
339
  }
166
340
  export default Courier;
167
341
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","NativeEventEmitter","Platform","CourierInboxListener","CourierInboxView","LINKING_ERROR","select","ios","default","CourierReactNativeModules","CourierReactNativeModule","Proxy","get","Error","CourierEventEmitter","Courier","_isDebugging","constructor","setDefaults","shared","_sharedInstance","Promise","all","setIsDebugging","__DEV__","error","console","log","isDebugging","_this$debugListener","debugListener","remove","addListener","event","setDebugMode","userId","getUserId","signIn","props","accessToken","clientKey","readMessage","messageId","unreadMessage","readAllInboxMessages","addInboxListener","inboxListener","onInitialLoad","onError","onMessagesChanged","messages","unreadMessageCount","totalMessageCount","canPaginate","listenerId","removeInboxListener","refreshInbox"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["NativeModules","NativeEventEmitter","Platform","DeviceEventEmitter","CourierInboxListener","CourierPushListener","CourierAuthenticationListener","CourierInboxView","CourierProvider","useCourier","LINKING_ERROR","select","ios","default","CourierReactNativeModules","CourierReactNativeModule","Proxy","get","Error","CourierEventEmitter","Courier","PUSH_NOTIFICATION_CLICKED","PUSH_NOTIFICATION_DELIVERED","_isDebugging","constructor","setDefaults","shared","_sharedInstance","setIsDebugging","__DEV__","iOSForegroundPresentationOptions","options","isDebugging","_this$debugListener","debugListener","remove","addListener","event","console","log","setDebugMode","props","OS","normalizedParams","Array","from","Set","apnsToken","undefined","getApnsToken","fcmToken","getFcmToken","setFcmToken","token","getNotificationPermissionStatus","requestNotificationPermission","addPushNotificationListener","pushListener","onPushNotificationClicked","onNotificationClickedListener","JSON","parse","error","onPushNotificationDelivered","onNotificationDeliveredListener","registerPushNotificationClickedOnKilledState","userId","getUserId","signIn","accessToken","clientKey","signOut","addAuthenticationListener","authListener","onUserChanged","listenerId","removeAuthenticationListener","readMessage","messageId","unreadMessage","readAllInboxMessages","addInboxListener","inboxListener","onInitialLoad","onError","onMessagesChanged","messages","unreadMessageCount","totalMessageCount","canPaginate","removeInboxListener","refreshInbox","fetchNextPageOfMessages","setInboxPaginationLimit","limit"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import Courier from "..";
2
+ export class CourierAuthenticationListener {
3
+ remove() {
4
+ var _this$onUserChanged;
5
+ if (this.listenerId) {
6
+ Courier.shared.removeInboxListener({
7
+ listenerId: this.listenerId
8
+ });
9
+ }
10
+ (_this$onUserChanged = this.onUserChanged) === null || _this$onUserChanged === void 0 ? void 0 : _this$onUserChanged.remove();
11
+ }
12
+ }
13
+ //# sourceMappingURL=CourierAuthenticationListener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Courier","CourierAuthenticationListener","remove","_this$onUserChanged","listenerId","shared","removeInboxListener","onUserChanged"],"sourceRoot":"../../../src","sources":["models/CourierAuthenticationListener.tsx"],"mappings":"AACA,OAAOA,OAAO,MAAM,IAAI;AAExB,OAAO,MAAMC,6BAA6B,CAAC;EAKlCC,MAAMA,CAAA,EAAG;IAAA,IAAAC,mBAAA;IAEd,IAAI,IAAI,CAACC,UAAU,EAAE;MACnBJ,OAAO,CAACK,MAAM,CAACC,mBAAmB,CAAC;QAAEF,UAAU,EAAE,IAAI,CAACA;MAAW,CAAC,CAAC;IACrE;IAEA,CAAAD,mBAAA,OAAI,CAACI,aAAa,cAAAJ,mBAAA,uBAAlBA,mBAAA,CAAoBD,MAAM,CAAC,CAAC;EAE9B;AAEF"}
@@ -0,0 +1,8 @@
1
+ export class CourierPushListener {
2
+ remove() {
3
+ var _this$onNotificationC, _this$onNotificationD;
4
+ (_this$onNotificationC = this.onNotificationClickedListener) === null || _this$onNotificationC === void 0 ? void 0 : _this$onNotificationC.remove();
5
+ (_this$onNotificationD = this.onNotificationDeliveredListener) === null || _this$onNotificationD === void 0 ? void 0 : _this$onNotificationD.remove();
6
+ }
7
+ }
8
+ //# sourceMappingURL=CourierPushListener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CourierPushListener","remove","_this$onNotificationC","_this$onNotificationD","onNotificationClickedListener","onNotificationDeliveredListener"],"sourceRoot":"../../../src","sources":["models/CourierPushListener.tsx"],"mappings":"AAEA,OAAO,MAAMA,mBAAmB,CAAC;EAKxBC,MAAMA,CAAA,EAAG;IAAA,IAAAC,qBAAA,EAAAC,qBAAA;IACd,CAAAD,qBAAA,OAAI,CAACE,6BAA6B,cAAAF,qBAAA,uBAAlCA,qBAAA,CAAoCD,MAAM,CAAC,CAAC;IAC5C,CAAAE,qBAAA,OAAI,CAACE,+BAA+B,cAAAF,qBAAA,uBAApCA,qBAAA,CAAsCF,MAAM,CAAC,CAAC;EAChD;AAEF"}
@@ -34,8 +34,10 @@ export const CourierInboxView = props => {
34
34
  }
35
35
  };
36
36
  return /*#__PURE__*/React.createElement(CourierInbox, {
37
- lightTheme: props.lightTheme,
38
- darkTheme: props.darkTheme,
37
+ theme: props.theme ?? {
38
+ light: undefined,
39
+ dark: undefined
40
+ },
39
41
  onClickInboxMessageAtIndex: onClickInboxMessageAtIndex,
40
42
  onClickInboxActionForMessageAtIndex: onClickInboxActionForMessageAtIndex,
41
43
  onScrollInbox: onScrollInbox,
@@ -1 +1 @@
1
- {"version":3,"names":["React","Platform","requireNativeComponent","UIManager","ComponentName","LINKING_ERROR","select","ios","default","CourierInbox","getViewManagerConfig","Error","CourierInboxView","props","onClickInboxMessageAtIndex","event","index","nativeEvent","message","onClickInboxActionForMessageAtIndex","action","onScrollInbox","contentOffset","createElement","lightTheme","darkTheme","style"],"sourceRoot":"../../../src","sources":["views/CourierInboxView.tsx"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,EAAEC,sBAAsB,EAAEC,SAAS,QAAmB,cAAc;AAcrF,MAAMC,aAAa,GAAG,wBAAwB;AAE9C,MAAMC,aAAa,GAChB,2FAA0F,GAC3FJ,QAAQ,CAACK,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,YAAY,GAChBN,SAAS,CAACO,oBAAoB,CAACN,aAAa,CAAC,IAAI,IAAI,GACjDF,sBAAsB,CAAwBE,aAAa,CAAC,GAC5D,MAAM;EACJ,MAAM,IAAIO,KAAK,CAACN,aAAa,CAAC;AAChC,CAAC;AAEP,OAAO,MAAMO,gBAAgB,GAAIC,KAA4B,IAAK;EAEhE,MAAMC,0BAA0B,GAAIC,KAAU,IAAK;IAEjD;IACA,IAAIF,KAAK,CAACC,0BAA0B,EAAE;MAEpC,MAAME,KAAK,GAAGD,KAAK,CAACE,WAAW,CAAC,OAAO,CAAC;MACxC,MAAMC,OAAO,GAAGH,KAAK,CAACE,WAAW,CAAC,SAAS,CAAiB;MAE5DJ,KAAK,CAACC,0BAA0B,CAACI,OAAO,EAAEF,KAAK,CAAC;IAElD;EAEF,CAAC;EAED,MAAMG,mCAAmC,GAAIJ,KAAU,IAAK;IAE1D;IACA,IAAIF,KAAK,CAACM,mCAAmC,EAAE;MAE7C,MAAMH,KAAK,GAAGD,KAAK,CAACE,WAAW,CAAC,OAAO,CAAC;MACxC,MAAMG,MAAM,GAAGL,KAAK,CAACE,WAAW,CAAC,QAAQ,CAAgB;MACzD,MAAMC,OAAO,GAAGH,KAAK,CAACE,WAAW,CAAC,SAAS,CAAiB;MAE5DJ,KAAK,CAACM,mCAAmC,CAACC,MAAM,EAAEF,OAAO,EAAEF,KAAK,CAAC;IAEnE;EAEF,CAAC;EAED,MAAMK,aAAa,GAAIN,KAAU,IAAK;IAEpC;IACA,IAAIF,KAAK,CAACQ,aAAa,EAAE;MAEvB,MAAMC,aAAa,GAAGP,KAAK,CAACE,WAAW,CAAC,eAAe,CAAC;MACxDJ,KAAK,CAACQ,aAAa,CAACC,aAAa,CAAC,GAAG,CAAC,EAAEA,aAAa,CAAC,GAAG,CAAC,CAAC;IAE7D;EAEF,CAAC;EAED,oBACEtB,KAAA,CAAAuB,aAAA,CAACd,YAAY;IACXe,UAAU,EAAEX,KAAK,CAACW,UAAW;IAC7BC,SAAS,EAAEZ,KAAK,CAACY,SAAU;IAC3BX,0BAA0B,EAAEA,0BAA2B;IACvDK,mCAAmC,EAAEA,mCAAoC;IACzEE,aAAa,EAAEA,aAAc;IAC7BK,KAAK,EAAEb,KAAK,CAACa;EAAM,CACpB,CAAC;AAGN,CAAC"}
1
+ {"version":3,"names":["React","Platform","requireNativeComponent","UIManager","ComponentName","LINKING_ERROR","select","ios","default","CourierInbox","getViewManagerConfig","Error","CourierInboxView","props","onClickInboxMessageAtIndex","event","index","nativeEvent","message","onClickInboxActionForMessageAtIndex","action","onScrollInbox","contentOffset","createElement","theme","light","undefined","dark","style"],"sourceRoot":"../../../src","sources":["views/CourierInboxView.tsx"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,EAAEC,sBAAsB,EAAEC,SAAS,QAAmB,cAAc;AAgBrF,MAAMC,aAAa,GAAG,wBAAwB;AAE9C,MAAMC,aAAa,GAChB,2FAA0F,GAC3FJ,QAAQ,CAACK,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,YAAY,GAChBN,SAAS,CAACO,oBAAoB,CAACN,aAAa,CAAC,IAAI,IAAI,GACjDF,sBAAsB,CAAwBE,aAAa,CAAC,GAC5D,MAAM;EACJ,MAAM,IAAIO,KAAK,CAACN,aAAa,CAAC;AAChC,CAAC;AAEP,OAAO,MAAMO,gBAAgB,GAAIC,KAA4B,IAAK;EAEhE,MAAMC,0BAA0B,GAAIC,KAAU,IAAK;IAEjD;IACA,IAAIF,KAAK,CAACC,0BAA0B,EAAE;MAEpC,MAAME,KAAK,GAAGD,KAAK,CAACE,WAAW,CAAC,OAAO,CAAC;MACxC,MAAMC,OAAO,GAAGH,KAAK,CAACE,WAAW,CAAC,SAAS,CAAiB;MAE5DJ,KAAK,CAACC,0BAA0B,CAACI,OAAO,EAAEF,KAAK,CAAC;IAElD;EAEF,CAAC;EAED,MAAMG,mCAAmC,GAAIJ,KAAU,IAAK;IAE1D;IACA,IAAIF,KAAK,CAACM,mCAAmC,EAAE;MAE7C,MAAMH,KAAK,GAAGD,KAAK,CAACE,WAAW,CAAC,OAAO,CAAC;MACxC,MAAMG,MAAM,GAAGL,KAAK,CAACE,WAAW,CAAC,QAAQ,CAAgB;MACzD,MAAMC,OAAO,GAAGH,KAAK,CAACE,WAAW,CAAC,SAAS,CAAiB;MAE5DJ,KAAK,CAACM,mCAAmC,CAACC,MAAM,EAAEF,OAAO,EAAEF,KAAK,CAAC;IAEnE;EAEF,CAAC;EAED,MAAMK,aAAa,GAAIN,KAAU,IAAK;IAEpC;IACA,IAAIF,KAAK,CAACQ,aAAa,EAAE;MAEvB,MAAMC,aAAa,GAAGP,KAAK,CAACE,WAAW,CAAC,eAAe,CAAC;MACxDJ,KAAK,CAACQ,aAAa,CAACC,aAAa,CAAC,GAAG,CAAC,EAAEA,aAAa,CAAC,GAAG,CAAC,CAAC;IAE7D;EAEF,CAAC;EAED,oBACEtB,KAAA,CAAAuB,aAAA,CAACd,YAAY;IACXe,KAAK,EAAEX,KAAK,CAACW,KAAK,IAAI;MAAEC,KAAK,EAAEC,SAAS;MAAEC,IAAI,EAAED;IAAU,CAAE;IAC5DZ,0BAA0B,EAAEA,0BAA2B;IACvDK,mCAAmC,EAAEA,mCAAoC;IACzEE,aAAa,EAAEA,aAAc;IAC7BO,KAAK,EAAEf,KAAK,CAACe;EAAM,CACpB,CAAC;AAGN,CAAC"}
@@ -0,0 +1,52 @@
1
+ import React, { ReactNode } from 'react';
2
+ import { InboxMessage } from 'src/models/InboxMessage';
3
+ interface CourierContextType {
4
+ auth?: {
5
+ isLoading: boolean;
6
+ error?: string;
7
+ userId?: string;
8
+ signIn: (props: {
9
+ accessToken: string;
10
+ clientKey?: string;
11
+ userId: string;
12
+ }) => Promise<void>;
13
+ signOut: () => Promise<void>;
14
+ };
15
+ push?: {
16
+ delivered: any;
17
+ clicked: any;
18
+ tokens: {
19
+ apns?: string;
20
+ fcm?: string;
21
+ };
22
+ notificationPermissionStatus?: string;
23
+ requestNotificationPermission: () => Promise<void>;
24
+ };
25
+ inbox?: {
26
+ isLoading: boolean;
27
+ error?: string;
28
+ messages: InboxMessage[];
29
+ unreadMessageCount: number;
30
+ totalMessageCount: number;
31
+ canPaginate: boolean;
32
+ setPaginationLimit: (limit: number) => void;
33
+ fetchNextPageOfMessages: () => Promise<InboxMessage[]>;
34
+ refresh: () => Promise<void>;
35
+ isRefreshing: boolean;
36
+ readAllMessages: () => Promise<void>;
37
+ readMessage: (messageId: string) => Promise<void>;
38
+ unreadMessage: (messageId: string) => Promise<void>;
39
+ };
40
+ }
41
+ export declare const CourierProvider: React.FC<{
42
+ listeners: ('auth' | 'push' | 'inbox')[];
43
+ children: ReactNode;
44
+ }>;
45
+ interface UseCourierProps {
46
+ inbox?: {
47
+ paginationLimit?: number;
48
+ };
49
+ }
50
+ export declare const useCourier: (props?: UseCourierProps) => CourierContextType;
51
+ export {};
52
+ //# sourceMappingURL=useCourier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCourier.d.ts","sourceRoot":"","sources":["../../../src/hooks/useCourier.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAiB,SAAS,EAAmC,MAAM,OAAO,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAOvD,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE;QACL,SAAS,EAAE,OAAO,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,CAAC,KAAK,EAAE;YAAE,WAAW,EAAE,MAAM,CAAC;YAAC,SAAS,CAAC,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9F,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;KAC9B,CAAA;IACD,IAAI,CAAC,EAAE;QACL,SAAS,EAAE,GAAG,CAAC;QACf,OAAO,EAAE,GAAG,CAAC;QACb,MAAM,EAAE;YACN,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;QACF,4BAA4B,CAAC,EAAE,MAAM,CAAC;QACtC,6BAA6B,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;KACpD,CAAA;IACD,KAAK,CAAC,EAAE;QACN,SAAS,EAAE,OAAO,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,YAAY,EAAE,CAAC;QACzB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,WAAW,EAAE,OAAO,CAAC;QACrB,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;QAC5C,uBAAuB,EAAE,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QACvD,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7B,YAAY,EAAE,OAAO,CAAC;QACtB,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;QACrC,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QAClD,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KACrD,CAAA;CACF;AAID,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,CA8NvG,CAAC;AAEF,UAAU,eAAe;IACvB,KAAK,CAAC,EAAE;QACN,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAA;CACF;AAED,eAAO,MAAM,UAAU,WAAW,eAAe,KAAQ,kBAexD,CAAC"}