1
-
2
1
/**
3
2
* sendbird-utils v0.0.3
4
3
* SendBird utils
@@ -15,7 +14,12 @@ function getParamsFromChannelName(channelName) {
15
14
var params = channelName . split ( '#' ) ;
16
15
var env = params [ 0 ] ;
17
16
18
- if ( env !== 'staging' && env !== 'development' && env !== 'production' && env !== 'local' ) {
17
+ if (
18
+ env !== 'staging' &&
19
+ env !== 'development' &&
20
+ env !== 'production' &&
21
+ env !== 'local'
22
+ ) {
19
23
// $FlowFixMe
20
24
return null ;
21
25
}
@@ -25,14 +29,14 @@ function getParamsFromChannelName(channelName) {
25
29
env : env ,
26
30
companyId : params [ 1 ] ,
27
31
documentId : params [ 2 ] ,
28
- users : params . slice ( - 2 ) . sort ( )
32
+ users : params . slice ( - 2 ) . sort ( ) ,
29
33
} ;
30
34
}
31
35
32
36
return {
33
37
env : env ,
34
38
companyId : params [ 1 ] ,
35
- users : params . slice ( - 2 ) . sort ( )
39
+ users : params . slice ( - 2 ) . sort ( ) ,
36
40
} ;
37
41
}
38
42
function getParamsFromChannelNameWithEnv ( buildEnv , channelName ) {
@@ -43,15 +47,19 @@ function getParamsFromChannelNameWithEnv(buildEnv, channelName) {
43
47
return null ;
44
48
}
45
49
function getThreadFromChannelFactory ( buildEnv ) {
46
- return function getThreadFromChannel ( channel , documentChannelAdapter , generalChannelAdapter , n ) {
50
+ return function getThreadFromChannel (
51
+ channel ,
52
+ documentChannelAdapter ,
53
+ generalChannelAdapter ,
54
+ n
55
+ ) {
47
56
var params = getParamsFromChannelNameWithEnv ( buildEnv , channel . name ) ;
48
57
49
58
if ( params ) {
50
59
if ( params . documentId ) {
51
60
return documentChannelAdapter ( channel , params ) ;
52
61
} // $FlowFixMe is real GeneralChannelParamsType
53
62
54
-
55
63
return generalChannelAdapter ( channel , params ) ;
56
64
}
57
65
@@ -63,17 +71,17 @@ function getThreadFromChannelFactory(buildEnv) {
63
71
var SenderFactory = new immutable . Record ( {
64
72
userId : '' ,
65
73
nickname : '' ,
66
- profileUrl : ''
74
+ profileUrl : '' ,
67
75
} ) ;
68
76
69
77
function senderAdapter ( _ref ) {
70
78
var userId = _ref . userId ,
71
- nickname = _ref . nickname ,
72
- profileUrl = _ref . profileUrl ;
79
+ nickname = _ref . nickname ,
80
+ profileUrl = _ref . profileUrl ;
73
81
return SenderFactory ( {
74
82
userId : userId ,
75
83
nickname : nickname ,
76
- profileUrl : profileUrl
84
+ profileUrl : profileUrl ,
77
85
} ) ;
78
86
}
79
87
@@ -89,30 +97,30 @@ var MessageFactory = new immutable.Record({
89
97
createdAt : null ,
90
98
updatedAt : null ,
91
99
sender : SenderFactory ( ) ,
92
- data : ''
100
+ data : '' ,
93
101
} ) ;
94
102
95
103
function messageAdapter ( userMessage ) {
96
104
/* $FlowFixMe FileMessage | AdminMessage is not implemented */
97
105
var messageId = userMessage . messageId ,
98
- message = userMessage . message ,
99
- createdAt = userMessage . createdAt ,
100
- updatedAt = userMessage . updatedAt ,
101
- data = userMessage . data ,
102
- sender = userMessage . sender ;
106
+ message = userMessage . message ,
107
+ createdAt = userMessage . createdAt ,
108
+ updatedAt = userMessage . updatedAt ,
109
+ data = userMessage . data ,
110
+ sender = userMessage . sender ;
103
111
return MessageFactory ( {
104
112
messageId : messageId ,
105
113
message : message ,
106
114
createdAt : createdAt ,
107
115
updatedAt : updatedAt ,
108
116
data : data ,
109
- sender : senderAdapter ( sender )
117
+ sender : senderAdapter ( sender ) ,
110
118
} ) ;
111
119
}
112
120
113
121
function messagesListAdapter ( userMessages ) {
114
122
return userMessages . reduce ( function ( a , v ) {
115
- return a . add ( messageAdapter ( v ) ) ;
123
+ return v ? a . add ( messageAdapter ( v ) ) : a ;
116
124
} , new immutable . Set ( ) ) ;
117
125
}
118
126
@@ -123,15 +131,15 @@ var documentThreadFactory = new immutable.Record({
123
131
members : new immutable . List ( ) ,
124
132
name : '' ,
125
133
unreadMessageCount : 0 ,
126
- messages : new immutable . Set ( )
134
+ messages : new immutable . Set ( ) ,
127
135
} ) ;
128
136
function documentThreadAdapter ( channel , messages , params ) {
129
137
var url = channel . url ,
130
- name = channel . name ,
131
- unreadMessageCount = channel . unreadMessageCount ,
132
- members = channel . members ;
138
+ name = channel . name ,
139
+ unreadMessageCount = channel . unreadMessageCount ,
140
+ members = channel . members ;
133
141
var companyId = params . companyId ,
134
- documentId = params . documentId ;
142
+ documentId = params . documentId ;
135
143
var membersList = membersAdapter ( members ) ;
136
144
var messagesList = messagesListAdapter ( messages ) ;
137
145
return documentThreadFactory ( {
@@ -141,7 +149,7 @@ function documentThreadAdapter(channel, messages, params) {
141
149
members : membersList ,
142
150
name : name ,
143
151
unreadMessageCount : unreadMessageCount ,
144
- messages : messagesList
152
+ messages : messagesList ,
145
153
} ) ;
146
154
}
147
155
var generalThreadFactory = new immutable . Record ( {
@@ -150,14 +158,14 @@ var generalThreadFactory = new immutable.Record({
150
158
members : new immutable . List ( ) ,
151
159
name : '' ,
152
160
unreadMessageCount : 0 ,
153
- messages : new immutable . Set ( )
161
+ messages : new immutable . Set ( ) ,
154
162
} ) ;
155
163
function generalThreadAdapter ( channel , messages , _ref2 ) {
156
164
var companyId = _ref2 . companyId ;
157
165
var url = channel . url ,
158
- name = channel . name ,
159
- unreadMessageCount = channel . unreadMessageCount ,
160
- members = channel . members ;
166
+ name = channel . name ,
167
+ unreadMessageCount = channel . unreadMessageCount ,
168
+ members = channel . members ;
161
169
var membersList = membersAdapter ( members ) ;
162
170
var messagesList = messagesListAdapter ( messages ) ;
163
171
return generalThreadFactory ( {
@@ -166,7 +174,7 @@ function generalThreadAdapter(channel, messages, _ref2) {
166
174
members : membersList ,
167
175
name : name ,
168
176
unreadMessageCount : unreadMessageCount ,
169
- messages : messagesList
177
+ messages : messagesList ,
170
178
} ) ;
171
179
}
172
180
@@ -184,26 +192,36 @@ function channelsFactory(env) {
184
192
var getThreadFromChannel = getThreadFromChannelFactory ( env ) ;
185
193
return function ( a , channel ) {
186
194
var lastMessage = channel . lastMessage ;
187
- return getThreadFromChannel ( channel , function ( _ , params ) {
188
- return dth ( a , channel , lastMessage , params ) ;
189
- } , function ( _ , params ) {
190
- return gth ( a , channel , lastMessage , params ) ;
191
- } , function ( ) {
192
- return a ;
193
- } ) ;
195
+ return getThreadFromChannel (
196
+ channel ,
197
+ function ( _ , params ) {
198
+ return dth ( a , channel , lastMessage , params ) ;
199
+ } ,
200
+ function ( _ , params ) {
201
+ return gth ( a , channel , lastMessage , params ) ;
202
+ } ,
203
+ function ( ) {
204
+ return a ;
205
+ }
206
+ ) ;
194
207
} ;
195
208
}
196
209
197
210
function messageReceiveFactory ( env ) {
198
211
var getThreadFromChannel = getThreadFromChannelFactory ( env ) ;
199
212
return function ( channel , messages ) {
200
- return getThreadFromChannel ( channel , function ( _ , params ) {
201
- return documentThreadAdapter ( channel , messages , params ) ;
202
- } , function ( _ , params ) {
203
- return generalThreadAdapter ( channel , messages , params ) ;
204
- } , function ( ) {
205
- return null ;
206
- } ) ;
213
+ return getThreadFromChannel (
214
+ channel ,
215
+ function ( _ , params ) {
216
+ return documentThreadAdapter ( channel , messages , params ) ;
217
+ } ,
218
+ function ( _ , params ) {
219
+ return generalThreadAdapter ( channel , messages , params ) ;
220
+ } ,
221
+ function ( ) {
222
+ return null ;
223
+ }
224
+ ) ;
207
225
} ;
208
226
}
209
227
function channelsToThreads ( env , channels ) {
@@ -212,7 +230,7 @@ function channelsToThreads(env, channels) {
212
230
213
231
/* */
214
232
var chatStateFactory = new immutable . Record ( {
215
- threads : new immutable . Map ( )
233
+ threads : new immutable . Map ( ) ,
216
234
} ) ;
217
235
218
236
function messagesMerge ( oldValue , newValue , key ) {
@@ -221,10 +239,12 @@ function messagesMerge(oldValue, newValue, key) {
221
239
}
222
240
223
241
function receiveMessageMergeTpState ( state , thread ) {
224
- return state . updateIn ( [ 'threads' , thread . name ] , // $FlowFixMe
225
- function ( u ) {
226
- return u ? u . mergeWith ( messagesMerge , thread ) : thread ;
227
- } ) ;
242
+ return state . updateIn (
243
+ [ 'threads' , thread . name ] , // $FlowFixMe
244
+ function ( u ) {
245
+ return u ? u . mergeWith ( messagesMerge , thread ) : thread ;
246
+ }
247
+ ) ;
228
248
}
229
249
230
250
exports . channelsToThreads = channelsToThreads ;
0 commit comments