@@ -25,11 +25,14 @@ public class RNVerloopSdkModule extends ReactContextBaseJavaModule implements Li
2525 private VerloopConfig verloopConfig ;
2626
2727 private Verloop verloop ;
28+
29+ private boolean configModified ;
2830
2931 public RNVerloopSdkModule (ReactApplicationContext reactContext ) {
3032 super (reactContext );
3133 this .reactContext = reactContext ;
3234 reactContext .addLifecycleEventListener (this );
35+ this .configModified = false ;
3336 }
3437
3538 @ Override
@@ -55,6 +58,7 @@ public void buttonClicked(String title, String type, String payload) {
5558 sendEvent (reactContext , "veloop_button_clicked" , params );
5659 }
5760 });
61+ configModified = true ;
5862 }
5963
6064 private void setUrlClickListener (VerloopConfig verloopConfig ){
@@ -65,26 +69,30 @@ public void urlClicked(String url) {
6569 sendEvent (reactContext , "veloop_url_clicked" , params );
6670 }
6771 });
72+ configModified = true ;
6873 }
6974
7075 @ ReactMethod
7176 public void createUserConfig (String clientId , String userId ) {
7277 verloopConfig = new VerloopConfig (clientId , userId );
7378 setButtonClickListener (verloopConfig );
7479 setUrlClickListener (verloopConfig );
80+ configModified = true ;
7581 }
7682
7783 @ ReactMethod
7884 public void createAnonymousUserConfig (String clientId ) {
7985 verloopConfig = new VerloopConfig (clientId );
8086 setButtonClickListener (verloopConfig );
8187 setUrlClickListener (verloopConfig );
88+ configModified = true ;
8289 }
8390
8491 @ ReactMethod
8592 public void setFcmToken (String token ) {
8693 if (verloopConfig != null ) {
8794 verloopConfig .setFcmToken (token );
95+ configModified = true ;
8896 }
8997 }
9098
@@ -99,6 +107,7 @@ public void setStaging(Boolean isStaging) {
99107 public void putCustomField (String key , String value ) {
100108 if (verloopConfig != null ) {
101109 verloopConfig .putCustomField (key , value );
110+ configModified = true ;
102111 }
103112 }
104113
@@ -112,43 +121,49 @@ public void putCustomFieldWithScope(String key, String value, String scope) {
112121 }else {
113122 verloopConfig .putCustomField (key , value );
114123 }
124+ configModified = true ;
115125 }
116126 }
117127
118128 @ ReactMethod
119129 public void setRecipeId (String recipeId ) {
120130 if (verloopConfig != null ) {
121131 verloopConfig .setRecipeId (recipeId );
132+ configModified = true ;
122133 }
123134 }
124135
125136 @ ReactMethod
126137 public void setUserEmail (String userEmail ) {
127138 if (verloopConfig != null ) {
128139 verloopConfig .setUserEmail (userEmail );
140+ configModified = true ;
129141 }
130142 }
131143
132144 @ ReactMethod
133145 public void setUserName (String userName ) {
134146 if (verloopConfig != null ) {
135147 verloopConfig .setUserName (userName );
148+ configModified = true ;
136149 }
137150 }
138151
139152 @ ReactMethod
140153 public void setUserPhone (String userPhone ) {
141154 if (verloopConfig != null ) {
142155 verloopConfig .setUserPhone (userPhone );
156+ configModified = true ;
143157 }
144158 }
145159
146160 @ ReactMethod
147161 public void showChat () {
148162 if (verloopConfig != null ) {
149- if (verloop == null ){
163+ if (verloop == null || configModified ){
150164 final Activity activity = getCurrentActivity ();
151165 verloop = new Verloop (activity , verloopConfig );
166+ configModified = false ;
152167 }
153168 verloop .showChat ();
154169 }
0 commit comments