11import { NativeModules } from 'react-native' ;
22
3- import { Iterable } from '../../core/classes/Iterable ' ;
3+ import type { IterableLogger } from '../../core/classes/IterableLogger ' ;
44import type {
55 IterableInAppDeleteSource ,
66 IterableInAppLocation ,
@@ -19,6 +19,20 @@ const RNIterableAPI = NativeModules.RNIterableAPI;
1919 * The `inAppManager` property of an `Iterable` instance is set to an instance of this class.
2020 */
2121export class IterableInAppManager {
22+ private logger ?: IterableLogger ;
23+
24+ constructor ( logger ?: IterableLogger ) {
25+ this . logger = logger ;
26+ }
27+
28+ /**
29+ * Sets the logger instance for this manager
30+ * @param logger - The logger instance to use
31+ */
32+ setLogger ( logger : IterableLogger ) {
33+ this . logger = logger ;
34+ }
35+
2236 /**
2337 * Retrieve the current user's list of in-app messages stored in the local queue.
2438 *
@@ -36,7 +50,7 @@ export class IterableInAppManager {
3650 * @returns A Promise that resolves to an array of in-app messages.
3751 */
3852 getMessages ( ) : Promise < IterableInAppMessage [ ] > {
39- Iterable ? .logger ?. log ( 'InAppManager.getMessages' ) ;
53+ this . logger ?. log ( 'InAppManager.getMessages' ) ;
4054
4155 return RNIterableAPI . getInAppMessages ( ) ;
4256 }
@@ -59,7 +73,7 @@ export class IterableInAppManager {
5973 * @returns A Promise that resolves to an array of messages marked as `saveToInbox`.
6074 */
6175 getInboxMessages ( ) : Promise < IterableInAppMessage [ ] > {
62- Iterable ? .logger ?. log ( 'InAppManager.getInboxMessages' ) ;
76+ this . logger ?. log ( 'InAppManager.getInboxMessages' ) ;
6377
6478 return RNIterableAPI . getInboxMessages ( ) ;
6579 }
@@ -86,7 +100,7 @@ export class IterableInAppManager {
86100 message : IterableInAppMessage ,
87101 consume : boolean
88102 ) : Promise < string | undefined > {
89- Iterable ? .logger ?. log ( 'InAppManager.show' ) ;
103+ this . logger ?. log ( 'InAppManager.show' ) ;
90104
91105 return RNIterableAPI . showMessage ( message . messageId , consume ) ;
92106 }
@@ -114,7 +128,7 @@ export class IterableInAppManager {
114128 location : IterableInAppLocation ,
115129 source : IterableInAppDeleteSource
116130 ) : void {
117- Iterable ? .logger ?. log ( 'InAppManager.remove' ) ;
131+ this . logger ?. log ( 'InAppManager.remove' ) ;
118132
119133 return RNIterableAPI . removeMessage ( message . messageId , location , source ) ;
120134 }
@@ -131,7 +145,7 @@ export class IterableInAppManager {
131145 * ```
132146 */
133147 setReadForMessage ( message : IterableInAppMessage , read : boolean ) {
134- Iterable ? .logger ?. log ( 'InAppManager.setRead' ) ;
148+ this . logger ?. log ( 'InAppManager.setRead' ) ;
135149
136150 RNIterableAPI . setReadForMessage ( message . messageId , read ) ;
137151 }
@@ -151,7 +165,7 @@ export class IterableInAppManager {
151165 getHtmlContentForMessage (
152166 message : IterableInAppMessage
153167 ) : Promise < IterableHtmlInAppContent > {
154- Iterable ? .logger ?. log ( 'InAppManager.getHtmlContentForMessage' ) ;
168+ this . logger ?. log ( 'InAppManager.getHtmlContentForMessage' ) ;
155169
156170 return RNIterableAPI . getHtmlInAppContentForMessage ( message . messageId ) ;
157171 }
@@ -171,7 +185,7 @@ export class IterableInAppManager {
171185 * ```
172186 */
173187 setAutoDisplayPaused ( paused : boolean ) {
174- Iterable ? .logger ?. log ( 'InAppManager.setAutoDisplayPaused' ) ;
188+ this . logger ?. log ( 'InAppManager.setAutoDisplayPaused' ) ;
175189
176190 RNIterableAPI . setAutoDisplayPaused ( paused ) ;
177191 }
0 commit comments