@trycourier/courier-react-native 2.0.0-beta2 → 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 (40) hide show
  1. package/ios/CourierReactNativeModule.m +43 -4
  2. package/ios/CourierReactNativeModule.swift +87 -79
  3. package/ios/CourierReactNativeViewManager.m +1 -3
  4. package/ios/CourierReactNativeViewManager.swift +4 -17
  5. package/lib/commonjs/hooks/useCourier.js +224 -0
  6. package/lib/commonjs/hooks/useCourier.js.map +1 -0
  7. package/lib/commonjs/index.js +193 -12
  8. package/lib/commonjs/index.js.map +1 -1
  9. package/lib/commonjs/models/CourierAuthenticationListener.js +21 -0
  10. package/lib/commonjs/models/CourierAuthenticationListener.js.map +1 -0
  11. package/lib/commonjs/models/CourierPushListener.js +15 -0
  12. package/lib/commonjs/models/CourierPushListener.js.map +1 -0
  13. package/lib/commonjs/views/CourierInboxView.js +4 -2
  14. package/lib/commonjs/views/CourierInboxView.js.map +1 -1
  15. package/lib/module/hooks/useCourier.js +213 -0
  16. package/lib/module/hooks/useCourier.js.map +1 -0
  17. package/lib/module/index.js +166 -13
  18. package/lib/module/index.js.map +1 -1
  19. package/lib/module/models/CourierAuthenticationListener.js +13 -0
  20. package/lib/module/models/CourierAuthenticationListener.js.map +1 -0
  21. package/lib/module/models/CourierPushListener.js +8 -0
  22. package/lib/module/models/CourierPushListener.js.map +1 -0
  23. package/lib/module/views/CourierInboxView.js +4 -2
  24. package/lib/module/views/CourierInboxView.js.map +1 -1
  25. package/lib/typescript/hooks/useCourier.d.ts +52 -0
  26. package/lib/typescript/hooks/useCourier.d.ts.map +1 -0
  27. package/lib/typescript/index.d.ts +81 -1
  28. package/lib/typescript/index.d.ts.map +1 -1
  29. package/lib/typescript/models/CourierAuthenticationListener.d.ts +7 -0
  30. package/lib/typescript/models/CourierAuthenticationListener.d.ts.map +1 -0
  31. package/lib/typescript/models/CourierPushListener.d.ts +7 -0
  32. package/lib/typescript/models/CourierPushListener.d.ts.map +1 -0
  33. package/lib/typescript/views/CourierInboxView.d.ts +4 -2
  34. package/lib/typescript/views/CourierInboxView.d.ts.map +1 -1
  35. package/package.json +1 -1
  36. package/src/hooks/useCourier.tsx +291 -0
  37. package/src/index.tsx +185 -13
  38. package/src/models/CourierAuthenticationListener.tsx +19 -0
  39. package/src/models/CourierPushListener.tsx +13 -0
  40. package/src/views/CourierInboxView.tsx +5 -4
@@ -3,16 +3,53 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ Object.defineProperty(exports, "CourierAuthenticationListener", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _CourierAuthenticationListener.CourierAuthenticationListener;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "CourierInboxListener", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _CourierInboxListener.CourierInboxListener;
16
+ }
17
+ });
6
18
  Object.defineProperty(exports, "CourierInboxView", {
7
19
  enumerable: true,
8
20
  get: function () {
9
21
  return _CourierInboxView.CourierInboxView;
10
22
  }
11
23
  });
24
+ Object.defineProperty(exports, "CourierProvider", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _useCourier.CourierProvider;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "CourierPushListener", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _CourierPushListener.CourierPushListener;
34
+ }
35
+ });
12
36
  exports.default = void 0;
37
+ Object.defineProperty(exports, "useCourier", {
38
+ enumerable: true,
39
+ get: function () {
40
+ return _useCourier.useCourier;
41
+ }
42
+ });
13
43
  var _reactNative = require("react-native");
14
44
  var _CourierInboxListener = require("./models/CourierInboxListener");
45
+ var _CourierPushListener = require("./models/CourierPushListener");
46
+ var _CourierAuthenticationListener = require("./models/CourierAuthenticationListener");
15
47
  var _CourierInboxView = require("./views/CourierInboxView");
48
+ var _useCourier = require("./hooks/useCourier");
49
+ // Imports
50
+
51
+ // Exports
52
+
16
53
  const LINKING_ERROR = `The package '@trycourier/courier-react-native' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
17
54
  ios: "- You have run 'pod install'\n",
18
55
  default: ''
@@ -24,6 +61,8 @@ const CourierReactNativeModules = _reactNative.NativeModules.CourierReactNativeM
24
61
  });
25
62
  const CourierEventEmitter = new _reactNative.NativeEventEmitter(_reactNative.NativeModules.CourierReactNativeModule);
26
63
  class Courier {
64
+ PUSH_NOTIFICATION_CLICKED = 'pushNotificationClicked';
65
+ PUSH_NOTIFICATION_DELIVERED = 'pushNotificationDelivered';
27
66
  _isDebugging = false;
28
67
  constructor() {
29
68
  // Sets the initial SDK values
@@ -41,16 +80,9 @@ class Courier {
41
80
  }
42
81
  async setDefaults() {
43
82
  this.setIsDebugging(__DEV__);
44
- // try {
45
- // await Promise.all([
46
- // this.setIsDebugging(__DEV__),
47
- // // this.iOSForegroundPresentationOptions({
48
- // // options: ['sound', 'badge', 'list', 'banner'],
49
- // // }),
50
- // ]);
51
- // } catch (error) {
52
- // console.log(error);
53
- // }
83
+ this.iOSForegroundPresentationOptions({
84
+ options: ['sound', 'badge', 'list', 'banner']
85
+ });
54
86
  }
55
87
 
56
88
  /**
@@ -78,12 +110,129 @@ class Courier {
78
110
  return this._isDebugging;
79
111
  }
80
112
 
113
+ /**
114
+ * TODO
115
+ * @param props
116
+ * @returns
117
+ */
118
+ iOSForegroundPresentationOptions(props) {
119
+ // Only works on iOS
120
+ if (_reactNative.Platform.OS !== 'ios') return 'unsupported';
121
+ const normalizedParams = Array.from(new Set(props.options));
122
+ return CourierReactNativeModules.iOSForegroundPresentationOptions({
123
+ options: normalizedParams
124
+ });
125
+ }
126
+
127
+ /**
128
+ * Sets the current Apple Push Notification Service (APNS) token
129
+ * using Courier token management apis
130
+ * @example const apnsToken = await Courier.apnsToken
131
+ */
132
+ get apnsToken() {
133
+ if (_reactNative.Platform.OS !== 'ios') return undefined;
134
+ return CourierReactNativeModules.getApnsToken();
135
+ }
136
+
137
+ /**
138
+ * Sets the current Firebase Cloud Messaging (FCM) token
139
+ * using Courier token management apis
140
+ * @example const fcmToken = await Courier.fcmToken
141
+ */
142
+ get fcmToken() {
143
+ return CourierReactNativeModules.getFcmToken();
144
+ }
145
+
146
+ /**
147
+ * Sets the current Firebase Cloud Messaging (FCM) token
148
+ * using Courier token management apis
149
+ * @example await setFcmToken('asdf...asdf')
150
+ */
151
+ setFcmToken(props) {
152
+ return CourierReactNativeModules.setFcmToken(props.token);
153
+ }
154
+
155
+ /**
156
+ * Gets notification permission status at a system level.
157
+ * @example const permissionStatus = await Courier.getNotificationPermissionStatus()
158
+ */
159
+ getNotificationPermissionStatus() {
160
+ return CourierReactNativeModules.getNotificationPermissionStatus();
161
+ }
162
+
163
+ /**
164
+ * Requests notification permission status at a system level.
165
+ * Returns the string associated with the permission status.
166
+ * Will return the current status and will not present a popup
167
+ * if the user has already been asked for permission.
168
+ * @example const permissionStatus = await Courier.requestNotificationPermission()
169
+ */
170
+ requestNotificationPermission() {
171
+ return CourierReactNativeModules.requestNotificationPermission();
172
+ }
173
+
174
+ /**
175
+ * @example
176
+ TODO
177
+ * @returns function that can be used to unsubscribe from registered listeners
178
+ */
179
+ addPushNotificationListener(props) {
180
+ const pushListener = new _CourierPushListener.CourierPushListener();
181
+ if (_reactNative.Platform.OS === 'android') {
182
+ if (props.onPushNotificationClicked) {
183
+ pushListener.onNotificationClickedListener = _reactNative.DeviceEventEmitter.addListener(this.PUSH_NOTIFICATION_CLICKED, event => {
184
+ try {
185
+ props.onPushNotificationClicked(JSON.parse(event));
186
+ } catch (error) {
187
+ console.log(error);
188
+ }
189
+ });
190
+ }
191
+ if (props.onPushNotificationDelivered) {
192
+ pushListener.onNotificationDeliveredListener = _reactNative.DeviceEventEmitter.addListener(this.PUSH_NOTIFICATION_DELIVERED, event => {
193
+ try {
194
+ props.onPushNotificationDelivered(JSON.parse(event));
195
+ } catch (error) {
196
+ console.log(error);
197
+ }
198
+ });
199
+ }
200
+ }
201
+ if (_reactNative.Platform.OS === 'ios') {
202
+ if (props.onPushNotificationClicked) {
203
+ pushListener.onNotificationClickedListener = CourierEventEmitter.addListener(this.PUSH_NOTIFICATION_CLICKED, event => {
204
+ try {
205
+ props.onPushNotificationClicked(JSON.parse(event));
206
+ } catch (error) {
207
+ console.log(error);
208
+ }
209
+ });
210
+ }
211
+ if (props.onPushNotificationDelivered) {
212
+ pushListener.onNotificationDeliveredListener = CourierEventEmitter.addListener(this.PUSH_NOTIFICATION_DELIVERED, event => {
213
+ try {
214
+ props.onPushNotificationDelivered(JSON.parse(event));
215
+ } catch (error) {
216
+ console.log(error);
217
+ }
218
+ });
219
+ }
220
+ }
221
+
222
+ // When listener is registered
223
+ // Attempt to fetch the last message that was clicked
224
+ // This is needed for when the app is killed and the
225
+ // user launched the app by clicking on a notifications
226
+ CourierReactNativeModules.registerPushNotificationClickedOnKilledState();
227
+ return pushListener;
228
+ }
229
+
81
230
  /**
82
231
  * Returns the current user id stored in local native storage
83
232
  * @example const userId = await Courier.userId
84
233
  */
85
234
  get userId() {
86
- return CourierReactNativeModules.getUserId();
235
+ return CourierReactNativeModules.getUserId() ?? undefined;
87
236
  }
88
237
 
89
238
  /**
@@ -106,6 +255,38 @@ class Courier {
106
255
  return CourierReactNativeModules.signIn(props.accessToken, props.clientKey ?? null, props.userId);
107
256
  }
108
257
 
258
+ /**
259
+ * TODO
260
+ * @param props
261
+ * @returns
262
+ */
263
+ signOut() {
264
+ return CourierReactNativeModules.signOut();
265
+ }
266
+
267
+ /**
268
+ * TODO
269
+ * @param props
270
+ * @returns
271
+ */
272
+ addAuthenticationListener(props) {
273
+ const authListener = new _CourierAuthenticationListener.CourierAuthenticationListener();
274
+ authListener.onUserChanged = CourierEventEmitter.addListener('courierAuthUserChanged', event => {
275
+ props.onUserChanged(event);
276
+ });
277
+ authListener.listenerId = CourierReactNativeModules.addAuthenticationListener();
278
+ return authListener;
279
+ }
280
+
281
+ /**
282
+ * TODO
283
+ * @param props
284
+ * @returns
285
+ */
286
+ removeAuthenticationListener(props) {
287
+ return CourierReactNativeModules.removeAuthenticationListener(props.listenerId);
288
+ }
289
+
109
290
  /**
110
291
  * TODO
111
292
  * @param props
@@ -156,7 +337,7 @@ class Courier {
156
337
  props.onMessagesChanged(event.messages, event.unreadMessageCount, event.totalMessageCount, event.canPaginate);
157
338
  });
158
339
  }
159
- inboxListener.listenerId = CourierReactNativeModules.addInboxListener(null);
340
+ inboxListener.listenerId = CourierReactNativeModules.addInboxListener();
160
341
  return inboxListener;
161
342
  }
162
343
 
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_CourierInboxListener","_CourierInboxView","LINKING_ERROR","Platform","select","ios","default","CourierReactNativeModules","NativeModules","CourierReactNativeModule","Proxy","get","Error","CourierEventEmitter","NativeEventEmitter","Courier","_isDebugging","constructor","setDefaults","shared","_sharedInstance","setIsDebugging","__DEV__","isDebugging","_this$debugListener","debugListener","remove","addListener","event","console","log","setDebugMode","userId","getUserId","signIn","props","accessToken","clientKey","readMessage","messageId","unreadMessage","readAllInboxMessages","addInboxListener","inboxListener","CourierInboxListener","onInitialLoad","onError","onMessagesChanged","messages","unreadMessageCount","totalMessageCount","canPaginate","listenerId","removeInboxListener","refreshInbox","fetchNextPageOfMessages","setInboxPaginationLimit","limit","_default","exports"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","_CourierInboxListener","_CourierPushListener","_CourierAuthenticationListener","_CourierInboxView","_useCourier","LINKING_ERROR","Platform","select","ios","default","CourierReactNativeModules","NativeModules","CourierReactNativeModule","Proxy","get","Error","CourierEventEmitter","NativeEventEmitter","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","CourierPushListener","onPushNotificationClicked","onNotificationClickedListener","DeviceEventEmitter","JSON","parse","error","onPushNotificationDelivered","onNotificationDeliveredListener","registerPushNotificationClickedOnKilledState","userId","getUserId","signIn","accessToken","clientKey","signOut","addAuthenticationListener","authListener","CourierAuthenticationListener","onUserChanged","listenerId","removeAuthenticationListener","readMessage","messageId","unreadMessage","readAllInboxMessages","addInboxListener","inboxListener","CourierInboxListener","onInitialLoad","onError","onMessagesChanged","messages","unreadMessageCount","totalMessageCount","canPaginate","removeInboxListener","refreshInbox","fetchNextPageOfMessages","setInboxPaginationLimit","limit","_default","exports"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CourierAuthenticationListener = void 0;
7
+ var _ = _interopRequireDefault(require(".."));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ class CourierAuthenticationListener {
10
+ remove() {
11
+ var _this$onUserChanged;
12
+ if (this.listenerId) {
13
+ _.default.shared.removeInboxListener({
14
+ listenerId: this.listenerId
15
+ });
16
+ }
17
+ (_this$onUserChanged = this.onUserChanged) === null || _this$onUserChanged === void 0 ? void 0 : _this$onUserChanged.remove();
18
+ }
19
+ }
20
+ exports.CourierAuthenticationListener = CourierAuthenticationListener;
21
+ //# sourceMappingURL=CourierAuthenticationListener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_","_interopRequireDefault","require","obj","__esModule","default","CourierAuthenticationListener","remove","_this$onUserChanged","listenerId","Courier","shared","removeInboxListener","onUserChanged","exports"],"sourceRoot":"../../../src","sources":["models/CourierAuthenticationListener.tsx"],"mappings":";;;;;;AACA,IAAAA,CAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAyB,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAElB,MAAMG,6BAA6B,CAAC;EAKlCC,MAAMA,CAAA,EAAG;IAAA,IAAAC,mBAAA;IAEd,IAAI,IAAI,CAACC,UAAU,EAAE;MACnBC,SAAO,CAACC,MAAM,CAACC,mBAAmB,CAAC;QAAEH,UAAU,EAAE,IAAI,CAACA;MAAW,CAAC,CAAC;IACrE;IAEA,CAAAD,mBAAA,OAAI,CAACK,aAAa,cAAAL,mBAAA,uBAAlBA,mBAAA,CAAoBD,MAAM,CAAC,CAAC;EAE9B;AAEF;AAACO,OAAA,CAAAR,6BAAA,GAAAA,6BAAA"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CourierPushListener = void 0;
7
+ class CourierPushListener {
8
+ remove() {
9
+ var _this$onNotificationC, _this$onNotificationD;
10
+ (_this$onNotificationC = this.onNotificationClickedListener) === null || _this$onNotificationC === void 0 ? void 0 : _this$onNotificationC.remove();
11
+ (_this$onNotificationD = this.onNotificationDeliveredListener) === null || _this$onNotificationD === void 0 ? void 0 : _this$onNotificationD.remove();
12
+ }
13
+ }
14
+ exports.CourierPushListener = CourierPushListener;
15
+ //# sourceMappingURL=CourierPushListener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CourierPushListener","remove","_this$onNotificationC","_this$onNotificationD","onNotificationClickedListener","onNotificationDeliveredListener","exports"],"sourceRoot":"../../../src","sources":["models/CourierPushListener.tsx"],"mappings":";;;;;;AAEO,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;AAACK,OAAA,CAAAN,mBAAA,GAAAA,mBAAA"}
@@ -41,8 +41,10 @@ const CourierInboxView = props => {
41
41
  }
42
42
  };
43
43
  return /*#__PURE__*/_react.default.createElement(CourierInbox, {
44
- lightTheme: props.lightTheme,
45
- darkTheme: props.darkTheme,
44
+ theme: props.theme ?? {
45
+ light: undefined,
46
+ dark: undefined
47
+ },
46
48
  onClickInboxMessageAtIndex: onClickInboxMessageAtIndex,
47
49
  onClickInboxActionForMessageAtIndex: onClickInboxActionForMessageAtIndex,
48
50
  onScrollInbox: onScrollInbox,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","obj","__esModule","default","ComponentName","LINKING_ERROR","Platform","select","ios","CourierInbox","UIManager","getViewManagerConfig","requireNativeComponent","Error","CourierInboxView","props","onClickInboxMessageAtIndex","event","index","nativeEvent","message","onClickInboxActionForMessageAtIndex","action","onScrollInbox","contentOffset","createElement","lightTheme","darkTheme","style","exports"],"sourceRoot":"../../../src","sources":["views/CourierInboxView.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAAsF,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AActF,MAAMG,aAAa,GAAG,wBAAwB;AAE9C,MAAMC,aAAa,GAChB,2FAA0F,GAC3FC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEL,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMM,YAAY,GAChBC,sBAAS,CAACC,oBAAoB,CAACP,aAAa,CAAC,IAAI,IAAI,GACjD,IAAAQ,mCAAsB,EAAwBR,aAAa,CAAC,GAC5D,MAAM;EACJ,MAAM,IAAIS,KAAK,CAACR,aAAa,CAAC;AAChC,CAAC;AAEA,MAAMS,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,oBACE3B,MAAA,CAAAM,OAAA,CAAAsB,aAAA,CAAChB,YAAY;IACXiB,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;AAAAC,OAAA,CAAAf,gBAAA,GAAAA,gBAAA"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","obj","__esModule","default","ComponentName","LINKING_ERROR","Platform","select","ios","CourierInbox","UIManager","getViewManagerConfig","requireNativeComponent","Error","CourierInboxView","props","onClickInboxMessageAtIndex","event","index","nativeEvent","message","onClickInboxActionForMessageAtIndex","action","onScrollInbox","contentOffset","createElement","theme","light","undefined","dark","style","exports"],"sourceRoot":"../../../src","sources":["views/CourierInboxView.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAAsF,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAgBtF,MAAMG,aAAa,GAAG,wBAAwB;AAE9C,MAAMC,aAAa,GAChB,2FAA0F,GAC3FC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEL,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMM,YAAY,GAChBC,sBAAS,CAACC,oBAAoB,CAACP,aAAa,CAAC,IAAI,IAAI,GACjD,IAAAQ,mCAAsB,EAAwBR,aAAa,CAAC,GAC5D,MAAM;EACJ,MAAM,IAAIS,KAAK,CAACR,aAAa,CAAC;AAChC,CAAC;AAEA,MAAMS,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,oBACE3B,MAAA,CAAAM,OAAA,CAAAsB,aAAA,CAAChB,YAAY;IACXiB,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;AAAAC,OAAA,CAAAjB,gBAAA,GAAAA,gBAAA"}
@@ -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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"}