@@ -53,7 +53,9 @@ extension PushUser {
53
53
let verificationProof = " \( sigType) : \( signature) "
54
54
55
55
let payload = UpdateUserPayload (
56
- name: newProfile. name, desc: newProfile. desc, picture: newProfile. picture,
56
+ name: newProfile. name,
57
+ desc: newProfile. desc,
58
+ picture: newProfile. picture,
57
59
blockedUsersList: newProfile. blockedUsersList,
58
60
verificationProof: verificationProof)
59
61
@@ -84,41 +86,52 @@ extension PushUser {
84
86
85
87
struct UpdateUserPayload : Codable {
86
88
var name : String ?
87
- var desc : String
88
- var picture : String
89
+ var desc : String ?
90
+ var picture : String ?
89
91
var blockedUsersList : [ String ]
90
92
var verificationProof : String
93
+
94
+ private enum CodingKeys : String , CodingKey {
95
+ case name, desc, picture, blockedUsersList, verificationProof
96
+ }
97
+
98
+
99
+ func encode( to encoder: Encoder ) throws {
100
+ var container = encoder. container ( keyedBy: CodingKeys . self)
101
+
102
+ try container. encode ( name, forKey: . name)
103
+ try container. encode ( desc, forKey: . desc)
104
+ try container. encode ( picture, forKey: . picture)
105
+ try container. encode ( blockedUsersList, forKey: . blockedUsersList)
106
+ try container. encode ( verificationProof, forKey: . verificationProof)
107
+ }
91
108
}
92
109
93
110
struct UpdateUseProfile : Codable {
94
111
public var name : String ?
95
- public var desc : String
96
- public var picture : String
112
+ public var desc : String ?
113
+ public var picture : String ?
97
114
public var blockedUsersList : [ String ]
98
115
}
99
116
100
117
func getUpdateProfileHash( newProfile: PushUser . UserProfile ) throws -> (
101
118
UpdateUseProfile , String
102
119
) {
120
+ let newUserProfile = UpdateUseProfile (
121
+ name: newProfile. name,
122
+ desc: newProfile. desc,
123
+ picture: newProfile. picture,
124
+ blockedUsersList: newProfile. blockedUsersList!)
103
125
104
- let _name = newProfile. name == nil ? " " : newProfile. name!
105
- let _desc = newProfile. desc == nil ? " " : newProfile. desc!
106
-
107
- let name = newProfile. name == nil ? " null " : " \" \( _name) \" "
108
- let desc = newProfile. desc == nil ? " null " : " \" \( _desc) \" "
126
+ let name = newProfile. name == nil ? " null " : " \" \( newProfile. name!) \" "
127
+ let desc = newProfile. desc == nil ? " null " : " \" \( newProfile. desc!) \" "
109
128
let picture = " \" \( newProfile. picture) \" "
110
- let blockedUsersList = newProfile . blockedUsersList!
129
+
111
130
112
131
let blockUserAddresses = flatten_address_list ( addresses: newProfile. blockedUsersList!)
113
132
let jsonString =
114
133
" { \" name \" : \( name) , \" desc \" : \( desc) , \" picture \" : \( picture) , \" blockedUsersList \" : \( blockUserAddresses) } "
115
-
116
- let newUserProfile = UpdateUseProfile (
117
- name: name. replacingOccurrences ( of: " \" " , with: " " ) ,
118
- desc: desc. replacingOccurrences ( of: " \" " , with: " " ) ,
119
- picture: picture. replacingOccurrences ( of: " \" " , with: " " ) ,
120
- blockedUsersList: blockedUsersList)
121
- let hash = generateSHA256Hash ( msg: jsonString)
134
+ let hash = generateSHA256Hash ( msg: jsonString)
122
135
123
136
return ( newUserProfile, hash)
124
137
}
0 commit comments