@@ -77,6 +77,20 @@ public static WritableMap toWritableMap(Map<String, Object> map) {
7777 return writableMap ;
7878 }
7979
80+ public static WritableMap toWritableStringMap (Map <String , String > map ) {
81+ WritableMap writableMap = Arguments .createMap ();
82+
83+ if (map == null ) {
84+ return writableMap ;
85+ }
86+
87+ for (Map .Entry <String , String > pair : map .entrySet ()) {
88+ writableMap .putString (pair .getKey (), pair .getValue ());
89+ }
90+
91+ return writableMap ;
92+ }
93+
8094 public static Map <String , Object > toHashMap (ReadableMap readableMap ) {
8195 HashMap <String , Object > hashMap = new HashMap <>();
8296
@@ -261,9 +275,14 @@ public static BootConfig toBootConfig(ReadableMap configMap) {
261275 bootConfig .setHidePopup (hidePopup .getValue ());
262276 }
263277
264- MapEntry <Boolean > unsubscribed = Utils .getBoolean (configMap , Const .KEY_UNSUBSCRIBED );
265- if (unsubscribed .hasValue ()) {
266- bootConfig .setUnsubscribed (unsubscribed .getValue ());
278+ MapEntry <Boolean > unsubscribedEmail = Utils .getBoolean (configMap , Const .KEY_UNSUBSCRIBED_EMAIL );
279+ if (unsubscribedEmail .hasValue ()) {
280+ bootConfig .setUnsubscribeEmail (unsubscribedEmail .getValue ());
281+ }
282+
283+ MapEntry <Boolean > unsubscribedTexting = Utils .getBoolean (configMap , Const .KEY_UNSUBSCRIBED_TEXTING );
284+ if (unsubscribedTexting .hasValue ()) {
285+ bootConfig .setUnsubscribeTexting (unsubscribedTexting .getValue ());
267286 }
268287
269288 MapEntry <ReadableMap > channelButtonOption = Utils .getReadableMap (configMap , Const .KEY_CHANNEL_BUTTON_OPTION , Const .KEY_LAUNCHER_CONFIG );
@@ -320,9 +339,14 @@ public static UserData toUserData(ReadableMap userDataMap) {
320339 userDataBuilder .setProfileOnceMap (toHashMap (profileOnce .getValue ()));
321340 }
322341
323- MapEntry <Boolean > unsubscribed = Utils .getBoolean (userDataMap , Const .KEY_UNSUBSCRIBED );
324- if (unsubscribed .hasValue ()) {
325- userDataBuilder .setUnsubscribed (unsubscribed .getValue ());
342+ MapEntry <Boolean > unsubscribedEmail = Utils .getBoolean (userDataMap , Const .KEY_UNSUBSCRIBED_EMAIL );
343+ if (unsubscribedEmail .hasValue ()) {
344+ userDataBuilder .setUnsubscribeEmail (unsubscribedEmail .getValue ());
345+ }
346+
347+ MapEntry <Boolean > unsubscribedTexting = Utils .getBoolean (userDataMap , Const .KEY_UNSUBSCRIBED_TEXTING );
348+ if (unsubscribedTexting .hasValue ()) {
349+ userDataBuilder .setUnsubscribeTexting (unsubscribedTexting .getValue ());
326350 }
327351
328352 return userDataBuilder .build ();
@@ -391,7 +415,8 @@ public static WritableMap userToWritableMap(User user) {
391415 userMap .putString (Const .KEY_NAME , user .getName ());
392416 userMap .putString (Const .KEY_AVATAR_URL , user .getAvatarUrl ());
393417 userMap .putInt (Const .KEY_ALERT , user .getAlert ());
394- userMap .putBoolean (Const .KEY_UNSUBSCRIBED , user .isUnsubscribed ());
418+ userMap .putBoolean (Const .KEY_UNSUBSCRIBED_EMAIL , user .isUnsubscribeEmail ());
419+ userMap .putBoolean (Const .KEY_UNSUBSCRIBED_TEXTING , user .isUnsubscribeTexting ());
395420 userMap .putString (Const .KEY_LANGUAGE , user .getLanguage ());
396421
397422 Map <String , Object > profile = user .getProfile ();
@@ -421,13 +446,6 @@ public static WritableMap popupDataToWritableMap(PopupData popupData) {
421446 return resultMap ;
422447 }
423448
424- public static WritableMap createKeyValueMap (String keyName , String keyContent , String valueName , Object valueContent ) {
425- Map <String , Object > map = new HashMap <>();
426- map .put (keyName , keyContent );
427- map .put (valueName , valueContent );
428- return toWritableMap (map );
429- }
430-
431449 public static WritableMap createSingleMap (String key , Object object ) {
432450 Map <String , Object > map = new HashMap <>();
433451 map .put (key , object );
0 commit comments