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

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.
@@ -45,4 +45,9 @@ RCT_EXTERN__BLOCKING_SYNCHRONOUS_METHOD(
45
45
  removeInboxListener: (NSString*)listenerId
46
46
  )
47
47
 
48
+ RCT_EXTERN_METHOD(
49
+ refreshInbox: (RCTPromiseResolveBlock)resolve
50
+ withRejecter: (RCTPromiseRejectBlock)reject
51
+ )
52
+
48
53
  @end
@@ -302,16 +302,20 @@ class CourierReactNativeModule: RCTEventEmitter {
302
302
 
303
303
  let listener = Courier.shared.addInboxListener(
304
304
  onInitialLoad: { [weak self] in
305
+
305
306
  self?.sendEvent(
306
307
  withName: CourierReactNativeModule.InboxEvents.INITIAL_LOADING,
307
308
  body: nil
308
309
  )
310
+
309
311
  },
310
312
  onError: { [weak self] error in
313
+
311
314
  self?.sendEvent(
312
315
  withName: CourierReactNativeModule.InboxEvents.ERROR,
313
316
  body: String(describing: error)
314
317
  )
318
+
315
319
  },
316
320
  onMessagesChanged: { [weak self] messages, unreadMessageCount, totalMessageCount, canPaginate in
317
321
 
@@ -338,6 +342,15 @@ class CourierReactNativeModule: RCTEventEmitter {
338
342
 
339
343
  }
340
344
 
345
+ @objc(refreshInbox: withRejecter:)
346
+ func refreshInbox(resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
347
+
348
+ Courier.shared.refreshInbox {
349
+ resolve(nil)
350
+ }
351
+
352
+ }
353
+
341
354
  @objc(removeInboxListener:)
342
355
  func removeInboxListener(listenerId: NSString) -> String {
343
356
 
@@ -13,7 +13,7 @@ exports.default = void 0;
13
13
  var _reactNative = require("react-native");
14
14
  var _CourierInboxListener = require("./models/CourierInboxListener");
15
15
  var _CourierInboxView = require("./views/CourierInboxView");
16
- const LINKING_ERROR = `The package 'courier-react-native' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
16
+ const LINKING_ERROR = `The package '@trycourier/courier-react-native' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
17
17
  ios: "- You have run 'pod install'\n",
18
18
  default: ''
19
19
  }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
@@ -24,12 +24,21 @@ const CourierReactNativeModules = _reactNative.NativeModules.CourierReactNativeM
24
24
  });
25
25
  const CourierEventEmitter = new _reactNative.NativeEventEmitter(_reactNative.NativeModules.CourierReactNativeModule);
26
26
  class Courier {
27
+ _isDebugging = false;
27
28
  constructor() {
28
29
  // Sets the initial SDK values
29
30
  // Defaults to React Native level debugging
30
31
  // and will show all foreground notification styles in iOS
31
32
  this.setDefaults();
32
33
  }
34
+
35
+ // Returns the public shared instance
36
+ static get shared() {
37
+ if (!this._sharedInstance) {
38
+ this._sharedInstance = new Courier();
39
+ }
40
+ return this._sharedInstance;
41
+ }
33
42
  async setDefaults() {
34
43
  try {
35
44
  await Promise.all([this.setIsDebugging(__DEV__)
@@ -41,7 +50,7 @@ class Courier {
41
50
  console.log(error);
42
51
  }
43
52
  }
44
- _isDebugging = false;
53
+
45
54
  /**
46
55
  * Tells native Courier SDKs to show or hide logs.
47
56
  * Defaults to the React __DEV__ mode
@@ -136,24 +145,36 @@ class Courier {
136
145
  }
137
146
  if (props.onError) {
138
147
  inboxListener.onError = CourierEventEmitter.addListener('inboxError', event => {
139
- console.log(event);
140
- props.onError();
148
+ props.onError(event);
141
149
  });
142
150
  }
143
151
  if (props.onMessagesChanged) {
144
152
  inboxListener.onMessagesChanged = CourierEventEmitter.addListener('inboxMessagesChanged', event => {
145
- console.log('onMessagesChanged');
146
- console.log(event);
147
- props.onMessagesChanged(event.messages);
153
+ props.onMessagesChanged(event.messages, event.unreadMessageCount, event.totalMessageCount, event.canPaginate);
148
154
  });
149
155
  }
150
156
  inboxListener.listenerId = CourierReactNativeModules.addInboxListener(null);
151
157
  return inboxListener;
152
158
  }
159
+
160
+ /**
161
+ * TODO
162
+ * @param props
163
+ * @returns
164
+ */
153
165
  removeInboxListener(props) {
154
166
  return CourierReactNativeModules.removeInboxListener(props.listenerId);
155
167
  }
168
+
169
+ /**
170
+ * TODO
171
+ * @param props
172
+ * @returns
173
+ */
174
+ async refreshInbox() {
175
+ return CourierReactNativeModules.refreshInbox();
176
+ }
156
177
  }
157
- var _default = new Courier();
178
+ var _default = Courier;
158
179
  exports.default = _default;
159
180
  //# sourceMappingURL=index.js.map
@@ -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","constructor","setDefaults","Promise","all","setIsDebugging","__DEV__","error","console","log","_isDebugging","isDebugging","_this$debugListener","debugListener","remove","addListener","event","setDebugMode","userId","getUserId","signIn","props","accessToken","clientKey","readMessage","messageId","unreadMessage","readAllInboxMessages","addInboxListener","inboxListener","CourierInboxListener","onInitialLoad","onError","onMessagesChanged","messages","listenerId","removeInboxListener","_default","exports"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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"}
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","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","CourierInboxListener","onInitialLoad","onError","onMessagesChanged","messages","unreadMessageCount","totalMessageCount","canPaginate","listenerId","removeInboxListener","refreshInbox","_default","exports"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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"}
@@ -4,14 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.CourierInboxListener = void 0;
7
- var _courierReactNative = _interopRequireDefault(require("courier-react-native"));
7
+ var _courierReactNative = _interopRequireDefault(require("@trycourier/courier-react-native"));
8
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
9
  class CourierInboxListener {
10
10
  remove() {
11
11
  var _this$onInitialLoad, _this$onError, _this$onMessagesChang;
12
12
  // Remove the native inbox listener
13
13
  if (this.listenerId) {
14
- _courierReactNative.default.removeInboxListener({
14
+ _courierReactNative.default.shared.removeInboxListener({
15
15
  listenerId: this.listenerId
16
16
  });
17
17
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_courierReactNative","_interopRequireDefault","require","obj","__esModule","default","CourierInboxListener","remove","_this$onInitialLoad","_this$onError","_this$onMessagesChang","listenerId","Courier","removeInboxListener","onInitialLoad","onError","onMessagesChanged","exports"],"sourceRoot":"../../../src","sources":["models/CourierInboxListener.tsx"],"mappings":";;;;;;AACA,IAAAA,mBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA2C,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEpC,MAAMG,oBAAoB,CAAC;EAOzBC,MAAMA,CAAA,EAAG;IAAA,IAAAC,mBAAA,EAAAC,aAAA,EAAAC,qBAAA;IAEd;IACA,IAAI,IAAI,CAACC,UAAU,EAAE;MACnBC,2BAAO,CAACC,mBAAmB,CAAC;QAAEF,UAAU,EAAE,IAAI,CAACA;MAAW,CAAC,CAAC;IAC9D;;IAEA;IACA,CAAAH,mBAAA,OAAI,CAACM,aAAa,cAAAN,mBAAA,uBAAlBA,mBAAA,CAAoBD,MAAM,CAAC,CAAC;IAC5B,CAAAE,aAAA,OAAI,CAACM,OAAO,cAAAN,aAAA,uBAAZA,aAAA,CAAcF,MAAM,CAAC,CAAC;IACtB,CAAAG,qBAAA,OAAI,CAACM,iBAAiB,cAAAN,qBAAA,uBAAtBA,qBAAA,CAAwBH,MAAM,CAAC,CAAC;EAElC;AAEF;AAACU,OAAA,CAAAX,oBAAA,GAAAA,oBAAA"}
1
+ {"version":3,"names":["_courierReactNative","_interopRequireDefault","require","obj","__esModule","default","CourierInboxListener","remove","_this$onInitialLoad","_this$onError","_this$onMessagesChang","listenerId","Courier","shared","removeInboxListener","onInitialLoad","onError","onMessagesChanged","exports"],"sourceRoot":"../../../src","sources":["models/CourierInboxListener.tsx"],"mappings":";;;;;;AACA,IAAAA,mBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAuD,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEhD,MAAMG,oBAAoB,CAAC;EAOzBC,MAAMA,CAAA,EAAG;IAAA,IAAAC,mBAAA,EAAAC,aAAA,EAAAC,qBAAA;IAEd;IACA,IAAI,IAAI,CAACC,UAAU,EAAE;MACnBC,2BAAO,CAACC,MAAM,CAACC,mBAAmB,CAAC;QAAEH,UAAU,EAAE,IAAI,CAACA;MAAW,CAAC,CAAC;IACrE;;IAEA;IACA,CAAAH,mBAAA,OAAI,CAACO,aAAa,cAAAP,mBAAA,uBAAlBA,mBAAA,CAAoBD,MAAM,CAAC,CAAC;IAC5B,CAAAE,aAAA,OAAI,CAACO,OAAO,cAAAP,aAAA,uBAAZA,aAAA,CAAcF,MAAM,CAAC,CAAC;IACtB,CAAAG,qBAAA,OAAI,CAACO,iBAAiB,cAAAP,qBAAA,uBAAtBA,qBAAA,CAAwBH,MAAM,CAAC,CAAC;EAElC;AAEF;AAACW,OAAA,CAAAZ,oBAAA,GAAAA,oBAAA"}
@@ -8,7 +8,7 @@ var _react = _interopRequireDefault(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
10
  const ComponentName = 'CourierReactNativeView';
11
- const LINKING_ERROR = `The package 'courier-react-native' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
11
+ const LINKING_ERROR = `The package '@trycourier/courier-react-native' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
12
12
  ios: "- You have run 'pod install'\n",
13
13
  default: ''
14
14
  }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
@@ -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,+EAA8E,GAC/EC,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","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,7 +1,7 @@
1
1
  import { NativeModules, NativeEventEmitter, Platform } from 'react-native';
2
2
  import { CourierInboxListener } from './models/CourierInboxListener';
3
3
  export { CourierInboxView } from './views/CourierInboxView';
4
- const LINKING_ERROR = `The package 'courier-react-native' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
4
+ const LINKING_ERROR = `The package '@trycourier/courier-react-native' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
5
5
  ios: "- You have run 'pod install'\n",
6
6
  default: ''
7
7
  }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
@@ -12,12 +12,21 @@ const CourierReactNativeModules = NativeModules.CourierReactNativeModule ? Nativ
12
12
  });
13
13
  const CourierEventEmitter = new NativeEventEmitter(NativeModules.CourierReactNativeModule);
14
14
  class Courier {
15
+ _isDebugging = false;
15
16
  constructor() {
16
17
  // Sets the initial SDK values
17
18
  // Defaults to React Native level debugging
18
19
  // and will show all foreground notification styles in iOS
19
20
  this.setDefaults();
20
21
  }
22
+
23
+ // Returns the public shared instance
24
+ static get shared() {
25
+ if (!this._sharedInstance) {
26
+ this._sharedInstance = new Courier();
27
+ }
28
+ return this._sharedInstance;
29
+ }
21
30
  async setDefaults() {
22
31
  try {
23
32
  await Promise.all([this.setIsDebugging(__DEV__)
@@ -29,7 +38,7 @@ class Courier {
29
38
  console.log(error);
30
39
  }
31
40
  }
32
- _isDebugging = false;
41
+
33
42
  /**
34
43
  * Tells native Courier SDKs to show or hide logs.
35
44
  * Defaults to the React __DEV__ mode
@@ -124,23 +133,35 @@ class Courier {
124
133
  }
125
134
  if (props.onError) {
126
135
  inboxListener.onError = CourierEventEmitter.addListener('inboxError', event => {
127
- console.log(event);
128
- props.onError();
136
+ props.onError(event);
129
137
  });
130
138
  }
131
139
  if (props.onMessagesChanged) {
132
140
  inboxListener.onMessagesChanged = CourierEventEmitter.addListener('inboxMessagesChanged', event => {
133
- console.log('onMessagesChanged');
134
- console.log(event);
135
- props.onMessagesChanged(event.messages);
141
+ props.onMessagesChanged(event.messages, event.unreadMessageCount, event.totalMessageCount, event.canPaginate);
136
142
  });
137
143
  }
138
144
  inboxListener.listenerId = CourierReactNativeModules.addInboxListener(null);
139
145
  return inboxListener;
140
146
  }
147
+
148
+ /**
149
+ * TODO
150
+ * @param props
151
+ * @returns
152
+ */
141
153
  removeInboxListener(props) {
142
154
  return CourierReactNativeModules.removeInboxListener(props.listenerId);
143
155
  }
156
+
157
+ /**
158
+ * TODO
159
+ * @param props
160
+ * @returns
161
+ */
162
+ async refreshInbox() {
163
+ return CourierReactNativeModules.refreshInbox();
164
+ }
144
165
  }
145
- export default new Courier();
166
+ export default Courier;
146
167
  //# 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","constructor","setDefaults","Promise","all","setIsDebugging","__DEV__","error","console","log","_isDebugging","isDebugging","_this$debugListener","debugListener","remove","addListener","event","setDebugMode","userId","getUserId","signIn","props","accessToken","clientKey","readMessage","messageId","unreadMessage","readAllInboxMessages","addInboxListener","inboxListener","onInitialLoad","onError","onMessagesChanged","messages","listenerId","removeInboxListener"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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"}
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":"AAAA,SACEA,aAAa,EACbC,kBAAkB,EAElBC,QAAQ,QACH,cAAc;AAErB,SAASC,oBAAoB,QAAQ,+BAA+B;AAEpE,SAASC,gBAAgB,QAAQ,0BAA0B;AAE3D,MAAMC,aAAa,GAChB,2FAA0F,GAC3FH,QAAQ,CAACI,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,yBAAyB,GAAGT,aAAa,CAACU,wBAAwB,GACpEV,aAAa,CAACU,wBAAwB,GACtC,IAAIC,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACR,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEL,MAAMS,mBAAmB,GAAG,IAAIb,kBAAkB,CAChDD,aAAa,CAACU,wBAChB,CAAC;AAED,MAAMK,OAAO,CAAC;EAGJC,YAAY,GAAG,KAAK;EAGrBC,WAAWA,CAAA,EAAG;IAEnB;IACA;IACA;IACA,IAAI,CAACC,WAAW,CAAC,CAAC;EACpB;;EAEA;EACA,WAAkBC,MAAMA,CAAA,EAAY;IAElC,IAAI,CAAC,IAAI,CAACC,eAAe,EAAE;MACzB,IAAI,CAACA,eAAe,GAAG,IAAIL,OAAO,CAAC,CAAC;IACtC;IAEA,OAAO,IAAI,CAACK,eAAe;EAE7B;EAEA,MAAcF,WAAWA,CAAA,EAAG;IAC1B,IAAI;MACF,MAAMG,OAAO,CAACC,GAAG,CAAC,CAChB,IAAI,CAACC,cAAc,CAACC,OAAO;MAC3B;MACA;MACA;MAAA,CACD,CAAC;IACJ,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,OAAO,CAACC,GAAG,CAACF,KAAK,CAAC;IACpB;EACF;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAaF,cAAcA,CAACK,WAAoB,EAAoB;IAAA,IAAAC,mBAAA;IAElE;IACA,CAAAA,mBAAA,OAAI,CAACC,aAAa,cAAAD,mBAAA,uBAAlBA,mBAAA,CAAoBE,MAAM,CAAC,CAAC;;IAE5B;IACA;IACA,IAAIH,WAAW,EAAE;MACf,IAAI,CAACE,aAAa,GAAGhB,mBAAmB,CAACkB,WAAW,CAAC,mBAAmB,EAAEC,KAAK,IAAI;QACjFP,OAAO,CAACC,GAAG,CAAC,mBAAmB,EAAE,SAAS,EAAEM,KAAK,CAAC;MACpD,CAAC,CAAC;IACJ;IAEA,IAAI,CAACjB,YAAY,GAAG,MAAMP,yBAAyB,CAACyB,YAAY,CAACN,WAAW,CAAC;IAE7E,OAAO,IAAI,CAACZ,YAAY;EAE1B;EAEA,IAAIY,WAAWA,CAAA,EAAY;IACzB,OAAO,IAAI,CAACZ,YAAY;EAC1B;;EAEA;AACF;AACA;AACA;EACE,IAAImB,MAAMA,CAAA,EAAgC;IACxC,OAAO1B,yBAAyB,CAAC2B,SAAS,CAAC,CAAC;EAC9C;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACSC,MAAMA,CAACC,KAAkE,EAAiB;IAC/F,OAAO7B,yBAAyB,CAAC4B,MAAM,CAACC,KAAK,CAACC,WAAW,EAAED,KAAK,CAACE,SAAS,IAAI,IAAI,EAAEF,KAAK,CAACH,MAAM,CAAC;EACnG;;EAEA;AACF;AACA;AACA;AACA;EACSM,WAAWA,CAACH,KAA4B,EAAiB;IAC9D,OAAO7B,yBAAyB,CAACgC,WAAW,CAACH,KAAK,CAACI,SAAS,CAAC;EAC/D;;EAEA;AACF;AACA;AACA;AACA;EACSC,aAAaA,CAACL,KAA4B,EAAiB;IAChE,OAAO7B,yBAAyB,CAACkC,aAAa,CAACL,KAAK,CAACI,SAAS,CAAC;EACjE;;EAEA;AACF;AACA;AACA;AACA;EACSE,oBAAoBA,CAAA,EAAkB;IAC3C,OAAOnC,yBAAyB,CAACmC,oBAAoB,CAAC,CAAC;EACzD;;EAEA;AACF;AACA;AACA;AACA;EACSC,gBAAgBA,CAACP,KAA6M,EAAwB;IAE3P;IACA,MAAMQ,aAAa,GAAG,IAAI3C,oBAAoB,CAAC,CAAC;IAEhD,IAAImC,KAAK,CAACS,aAAa,EAAE;MACvBD,aAAa,CAACC,aAAa,GAAGjC,mBAAmB,CAACkB,WAAW,CAAC,kBAAkB,EAAE,MAAM;QACtFM,KAAK,CAACS,aAAa,CAAE,CAAC;MACxB,CAAC,CAAC;IACJ;IAEA,IAAIT,KAAK,CAACU,OAAO,EAAE;MACjBF,aAAa,CAACE,OAAO,GAAGlC,mBAAmB,CAACkB,WAAW,CAAC,YAAY,EAAEC,KAAK,IAAI;QAC7EK,KAAK,CAACU,OAAO,CAAEf,KAAK,CAAC;MACvB,CAAC,CAAC;IACJ;IAEA,IAAIK,KAAK,CAACW,iBAAiB,EAAE;MAC3BH,aAAa,CAACG,iBAAiB,GAAGnC,mBAAmB,CAACkB,WAAW,CAAC,sBAAsB,EAAEC,KAAK,IAAI;QACjGK,KAAK,CAACW,iBAAiB,CACrBhB,KAAK,CAACiB,QAAQ,EACdjB,KAAK,CAACkB,kBAAkB,EACxBlB,KAAK,CAACmB,iBAAiB,EACvBnB,KAAK,CAACoB,WACR,CAAC;MACH,CAAC,CAAC;IACJ;IAEAP,aAAa,CAACQ,UAAU,GAAG7C,yBAAyB,CAACoC,gBAAgB,CAAC,IAAI,CAAC;IAE3E,OAAOC,aAAa;EAEtB;;EAEA;AACF;AACA;AACA;AACA;EACSS,mBAAmBA,CAACjB,KAA6B,EAAU;IAChE,OAAO7B,yBAAyB,CAAC8C,mBAAmB,CAACjB,KAAK,CAACgB,UAAU,CAAC;EACxE;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAaE,YAAYA,CAAA,EAAkB;IACzC,OAAO/C,yBAAyB,CAAC+C,YAAY,CAAC,CAAC;EACjD;AAEF;AAEA,eAAezC,OAAO"}
@@ -1,10 +1,10 @@
1
- import Courier from 'courier-react-native';
1
+ import Courier from "@trycourier/courier-react-native";
2
2
  export class CourierInboxListener {
3
3
  remove() {
4
4
  var _this$onInitialLoad, _this$onError, _this$onMessagesChang;
5
5
  // Remove the native inbox listener
6
6
  if (this.listenerId) {
7
- Courier.removeInboxListener({
7
+ Courier.shared.removeInboxListener({
8
8
  listenerId: this.listenerId
9
9
  });
10
10
  }
@@ -1 +1 @@
1
- {"version":3,"names":["Courier","CourierInboxListener","remove","_this$onInitialLoad","_this$onError","_this$onMessagesChang","listenerId","removeInboxListener","onInitialLoad","onError","onMessagesChanged"],"sourceRoot":"../../../src","sources":["models/CourierInboxListener.tsx"],"mappings":"AACA,OAAOA,OAAO,MAAM,sBAAsB;AAE1C,OAAO,MAAMC,oBAAoB,CAAC;EAOzBC,MAAMA,CAAA,EAAG;IAAA,IAAAC,mBAAA,EAAAC,aAAA,EAAAC,qBAAA;IAEd;IACA,IAAI,IAAI,CAACC,UAAU,EAAE;MACnBN,OAAO,CAACO,mBAAmB,CAAC;QAAED,UAAU,EAAE,IAAI,CAACA;MAAW,CAAC,CAAC;IAC9D;;IAEA;IACA,CAAAH,mBAAA,OAAI,CAACK,aAAa,cAAAL,mBAAA,uBAAlBA,mBAAA,CAAoBD,MAAM,CAAC,CAAC;IAC5B,CAAAE,aAAA,OAAI,CAACK,OAAO,cAAAL,aAAA,uBAAZA,aAAA,CAAcF,MAAM,CAAC,CAAC;IACtB,CAAAG,qBAAA,OAAI,CAACK,iBAAiB,cAAAL,qBAAA,uBAAtBA,qBAAA,CAAwBH,MAAM,CAAC,CAAC;EAElC;AAEF"}
1
+ {"version":3,"names":["Courier","CourierInboxListener","remove","_this$onInitialLoad","_this$onError","_this$onMessagesChang","listenerId","shared","removeInboxListener","onInitialLoad","onError","onMessagesChanged"],"sourceRoot":"../../../src","sources":["models/CourierInboxListener.tsx"],"mappings":"AACA,OAAOA,OAAO,MAAM,kCAAkC;AAEtD,OAAO,MAAMC,oBAAoB,CAAC;EAOzBC,MAAMA,CAAA,EAAG;IAAA,IAAAC,mBAAA,EAAAC,aAAA,EAAAC,qBAAA;IAEd;IACA,IAAI,IAAI,CAACC,UAAU,EAAE;MACnBN,OAAO,CAACO,MAAM,CAACC,mBAAmB,CAAC;QAAEF,UAAU,EAAE,IAAI,CAACA;MAAW,CAAC,CAAC;IACrE;;IAEA;IACA,CAAAH,mBAAA,OAAI,CAACM,aAAa,cAAAN,mBAAA,uBAAlBA,mBAAA,CAAoBD,MAAM,CAAC,CAAC;IAC5B,CAAAE,aAAA,OAAI,CAACM,OAAO,cAAAN,aAAA,uBAAZA,aAAA,CAAcF,MAAM,CAAC,CAAC;IACtB,CAAAG,qBAAA,OAAI,CAACM,iBAAiB,cAAAN,qBAAA,uBAAtBA,qBAAA,CAAwBH,MAAM,CAAC,CAAC;EAElC;AAEF"}
@@ -1,7 +1,7 @@
1
1
  import React from "react";
2
2
  import { Platform, requireNativeComponent, UIManager } from "react-native";
3
3
  const ComponentName = 'CourierReactNativeView';
4
- const LINKING_ERROR = `The package 'courier-react-native' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
4
+ const LINKING_ERROR = `The package '@trycourier/courier-react-native' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
5
5
  ios: "- You have run 'pod install'\n",
6
6
  default: ''
7
7
  }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
@@ -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,+EAA8E,GAC/EJ,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","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"}
@@ -2,10 +2,12 @@ import { CourierInboxListener } from './models/CourierInboxListener';
2
2
  import { InboxMessage } from './models/InboxMessage';
3
3
  export { CourierInboxView } from './views/CourierInboxView';
4
4
  declare class Courier {
5
- constructor();
6
- private setDefaults;
5
+ private static _sharedInstance;
7
6
  private _isDebugging;
8
7
  private debugListener;
8
+ constructor();
9
+ static get shared(): Courier;
10
+ private setDefaults;
9
11
  /**
10
12
  * Tells native Courier SDKs to show or hide logs.
11
13
  * Defaults to the React __DEV__ mode
@@ -67,14 +69,24 @@ declare class Courier {
67
69
  * @returns
68
70
  */
69
71
  addInboxListener(props: {
70
- onInitialLoad: () => void;
71
- onError: () => void;
72
- onMessagesChanged: (messages: InboxMessage[]) => void;
72
+ onInitialLoad?: () => void;
73
+ onError?: (error: string) => void;
74
+ onMessagesChanged?: (messages: InboxMessage[], unreadMessageCount: number, totalMessageCount: number, canPaginate: boolean) => void;
73
75
  }): CourierInboxListener;
76
+ /**
77
+ * TODO
78
+ * @param props
79
+ * @returns
80
+ */
74
81
  removeInboxListener(props: {
75
82
  listenerId: string;
76
83
  }): string;
84
+ /**
85
+ * TODO
86
+ * @param props
87
+ * @returns
88
+ */
89
+ refreshInbox(): Promise<void>;
77
90
  }
78
- declare const _default: Courier;
79
- export default _default;
91
+ export default Courier;
80
92
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAuB5D,cAAM,OAAO;;YAUG,WAAW;IAazB,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,aAAa,CAAkC;IAEvD;;;;OAIG;IACU,cAAc,CAAC,WAAW,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBnE,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;;OAGG;IACH,IAAI,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAExC;IAED;;;;;;;;;;;;;;;OAeG;IACI,MAAM,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhG;;;;OAIG;IACI,WAAW,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/D;;;;OAIG;IACI,aAAa,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjE;;;;OAIG;IACI,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5C;;;;OAIG;IACI,gBAAgB,CAAC,KAAK,EAAE;QAAE,aAAa,EAAE,MAAM,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,IAAI,CAAC;QAAC,iBAAiB,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,IAAI,CAAA;KAAE,GAAG,oBAAoB;IAkCxJ,mBAAmB,CAAC,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM;CAIlE;;AAED,wBAA6B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAuB5D,cAAM,OAAO;IAEX,OAAO,CAAC,MAAM,CAAC,eAAe,CAAU;IACxC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,aAAa,CAAkC;;IAWvD,WAAkB,MAAM,IAAI,OAAO,CAQlC;YAEa,WAAW;IAazB;;;;OAIG;IACU,cAAc,CAAC,WAAW,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBnE,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;;OAGG;IACH,IAAI,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAExC;IAED;;;;;;;;;;;;;;;OAeG;IACI,MAAM,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhG;;;;OAIG;IACI,WAAW,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/D;;;;OAIG;IACI,aAAa,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjE;;;;OAIG;IACI,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5C;;;;OAIG;IACI,gBAAgB,CAAC,KAAK,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;QAAC,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,GAAG,oBAAoB;IAkC5P;;;;OAIG;IACI,mBAAmB,CAAC,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM;IAIjE;;;;OAIG;IACU,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;CAI3C;AAED,eAAe,OAAO,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"CourierInboxListener.d.ts","sourceRoot":"","sources":["../../../src/models/CourierInboxListener.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAGlD,qBAAa,oBAAoB;IAExB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,OAAO,CAAC,EAAE,mBAAmB,CAAA;IAC7B,iBAAiB,CAAC,EAAE,mBAAmB,CAAA;IAEvC,MAAM;CAcd"}
1
+ {"version":3,"file":"CourierInboxListener.d.ts","sourceRoot":"","sources":["../../../src/models/CourierInboxListener.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAGnD,qBAAa,oBAAoB;IAExB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,OAAO,CAAC,EAAE,mBAAmB,CAAA;IAC7B,iBAAiB,CAAC,EAAE,mBAAmB,CAAA;IAEvC,MAAM;CAcd"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trycourier/courier-react-native",
3
- "version": "2.0.0-beta0",
3
+ "version": "2.0.0-beta1",
4
4
  "description": "Inbox & Push Notifications for React Native",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
package/src/index.tsx CHANGED
@@ -4,13 +4,13 @@ import {
4
4
  EmitterSubscription,
5
5
  Platform,
6
6
  } from 'react-native';
7
+
7
8
  import { CourierInboxListener } from './models/CourierInboxListener';
8
9
  import { InboxMessage } from './models/InboxMessage';
9
-
10
10
  export { CourierInboxView } from './views/CourierInboxView';
11
11
 
12
12
  const LINKING_ERROR =
13
- `The package 'courier-react-native' doesn't seem to be linked. Make sure: \n\n` +
13
+ `The package '@trycourier/courier-react-native' doesn't seem to be linked. Make sure: \n\n` +
14
14
  Platform.select({ ios: "- You have run 'pod install'\n", default: '' }) +
15
15
  '- You rebuilt the app after installing the package\n' +
16
16
  '- You are not using Expo Go\n';
@@ -32,6 +32,10 @@ const CourierEventEmitter = new NativeEventEmitter(
32
32
 
33
33
  class Courier {
34
34
 
35
+ private static _sharedInstance: Courier;
36
+ private _isDebugging = false;
37
+ private debugListener: EmitterSubscription | undefined;
38
+
35
39
  public constructor() {
36
40
 
37
41
  // Sets the initial SDK values
@@ -40,6 +44,17 @@ class Courier {
40
44
  this.setDefaults();
41
45
  }
42
46
 
47
+ // Returns the public shared instance
48
+ public static get shared(): Courier {
49
+
50
+ if (!this._sharedInstance) {
51
+ this._sharedInstance = new Courier();
52
+ }
53
+
54
+ return this._sharedInstance;
55
+
56
+ }
57
+
43
58
  private async setDefaults() {
44
59
  try {
45
60
  await Promise.all([
@@ -53,10 +68,6 @@ class Courier {
53
68
  }
54
69
  }
55
70
 
56
- private _isDebugging = false;
57
-
58
- private debugListener: EmitterSubscription | undefined;
59
-
60
71
  /**
61
72
  * Tells native Courier SDKs to show or hide logs.
62
73
  * Defaults to the React __DEV__ mode
@@ -145,7 +156,7 @@ class Courier {
145
156
  * @param props
146
157
  * @returns
147
158
  */
148
- public addInboxListener(props: { onInitialLoad: () => void, onError: () => void, onMessagesChanged: (messages: InboxMessage[]) => void }): CourierInboxListener {
159
+ public addInboxListener(props: { onInitialLoad?: () => void, onError?: (error: string) => void, onMessagesChanged?: (messages: InboxMessage[], unreadMessageCount: number, totalMessageCount: number, canPaginate: boolean) => void }): CourierInboxListener {
149
160
 
150
161
  // Create the initial listeners
151
162
  const inboxListener = new CourierInboxListener();
@@ -158,17 +169,17 @@ class Courier {
158
169
 
159
170
  if (props.onError) {
160
171
  inboxListener.onError = CourierEventEmitter.addListener('inboxError', event => {
161
- console.log(event)
162
- props.onError!()
172
+ props.onError!(event)
163
173
  });
164
174
  }
165
175
 
166
176
  if (props.onMessagesChanged) {
167
177
  inboxListener.onMessagesChanged = CourierEventEmitter.addListener('inboxMessagesChanged', event => {
168
- console.log('onMessagesChanged')
169
- console.log(event)
170
178
  props.onMessagesChanged!(
171
- event.messages
179
+ event.messages,
180
+ event.unreadMessageCount,
181
+ event.totalMessageCount,
182
+ event.canPaginate,
172
183
  )
173
184
  });
174
185
  }
@@ -179,10 +190,24 @@ class Courier {
179
190
 
180
191
  }
181
192
 
193
+ /**
194
+ * TODO
195
+ * @param props
196
+ * @returns
197
+ */
182
198
  public removeInboxListener(props: { listenerId: string }): string {
183
199
  return CourierReactNativeModules.removeInboxListener(props.listenerId);
184
200
  }
201
+
202
+ /**
203
+ * TODO
204
+ * @param props
205
+ * @returns
206
+ */
207
+ public async refreshInbox(): Promise<void> {
208
+ return CourierReactNativeModules.refreshInbox();
209
+ }
185
210
 
186
211
  }
187
212
 
188
- export default new Courier();
213
+ export default Courier;
@@ -1,5 +1,5 @@
1
- import { EmitterSubscription } from "react-native"
2
- import Courier from 'courier-react-native';
1
+ import { EmitterSubscription } from "react-native";
2
+ import Courier from "@trycourier/courier-react-native";
3
3
 
4
4
  export class CourierInboxListener {
5
5
 
@@ -12,7 +12,7 @@ export class CourierInboxListener {
12
12
 
13
13
  // Remove the native inbox listener
14
14
  if (this.listenerId) {
15
- Courier.removeInboxListener({ listenerId: this.listenerId });
15
+ Courier.shared.removeInboxListener({ listenerId: this.listenerId });
16
16
  }
17
17
 
18
18
  // Remove the emitters
@@ -16,7 +16,7 @@ type CourierInboxViewProps = {
16
16
  const ComponentName = 'CourierReactNativeView';
17
17
 
18
18
  const LINKING_ERROR =
19
- `The package 'courier-react-native' doesn't seem to be linked. Make sure: \n\n` +
19
+ `The package '@trycourier/courier-react-native' doesn't seem to be linked. Make sure: \n\n` +
20
20
  Platform.select({ ios: "- You have run 'pod install'\n", default: '' }) +
21
21
  '- You rebuilt the app after installing the package\n' +
22
22
  '- You are not using Expo Go\n';