@plusscommunities/pluss-circles-app 1.2.1 → 1.2.3-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/module/actions/ChatActions.js.map +1 -1
- package/dist/module/actions/GroupActions.js +18 -8
- package/dist/module/actions/GroupActions.js.map +1 -1
- package/dist/module/actions/index.js.map +1 -1
- package/dist/module/actions/types.js +20 -19
- package/dist/module/actions/types.js.map +1 -1
- package/dist/module/assets/fonts.js.map +1 -1
- package/dist/module/components/chat/Chat.js +18 -9
- package/dist/module/components/chat/Chat.js.map +1 -1
- package/dist/module/components/chat/ChatList.js +78 -10
- package/dist/module/components/chat/ChatList.js.map +1 -1
- package/dist/module/components/chat/ContactsList.js +2 -1
- package/dist/module/components/chat/ContactsList.js.map +1 -1
- package/dist/module/components/chat/KioskPeoplePage.js.map +1 -1
- package/dist/module/components/chat/PeopleContainer.js.map +1 -1
- package/dist/module/components/chat/PeoplePage.js +14 -12
- package/dist/module/components/chat/PeoplePage.js.map +1 -1
- package/dist/module/components/common/index.js.map +1 -1
- package/dist/module/components/events/EventInvitePopup.js.map +1 -1
- package/dist/module/components/groups/EditGroup.js +7 -6
- package/dist/module/components/groups/EditGroup.js.map +1 -1
- package/dist/module/components/groups/GroupDetails.js +2 -1
- package/dist/module/components/groups/GroupDetails.js.map +1 -1
- package/dist/module/components/groups/GroupsList.js +25 -4
- package/dist/module/components/groups/GroupsList.js.map +1 -1
- package/dist/module/components/groups/GroupsWidget.js +5 -4
- package/dist/module/components/groups/GroupsWidget.js.map +1 -1
- package/dist/module/components/groups/NewGroup.js +45 -18
- package/dist/module/components/groups/NewGroup.js.map +1 -1
- package/dist/module/components/groups/PublicGroup.js.map +1 -1
- package/dist/module/components/groups/PublicGroupAction.js +2 -1
- package/dist/module/components/groups/PublicGroupAction.js.map +1 -1
- package/dist/module/components/notifications/GroupInvite.js.map +1 -1
- package/dist/module/components/notifications/GroupInviteAction.js +2 -1
- package/dist/module/components/notifications/GroupInviteAction.js.map +1 -1
- package/dist/module/components/notifications/GroupMessage.js +18 -17
- package/dist/module/components/notifications/GroupMessage.js.map +1 -1
- package/dist/module/components/takeover/TakeoverBackground.js.map +1 -1
- package/dist/module/config/index.js +3 -2
- package/dist/module/config/index.js.map +1 -1
- package/dist/module/core.config.js.map +1 -1
- package/dist/module/feature.config.js +46 -20
- package/dist/module/feature.config.js.map +1 -1
- package/dist/module/index.js +9 -8
- package/dist/module/index.js.map +1 -1
- package/dist/module/js/Colors.js.map +1 -1
- package/dist/module/js/NavigationService.js.map +1 -1
- package/dist/module/js/Styles.js.map +1 -1
- package/dist/module/js/circles/MapStateToDirectMessages.js +11 -0
- package/dist/module/js/circles/MapStateToDirectMessages.js.map +1 -0
- package/dist/module/js/index.js +4 -1
- package/dist/module/js/index.js.map +1 -1
- package/dist/module/reducers/ChatsReducer.js.map +1 -1
- package/dist/module/reducers/GroupsReducer.js.map +1 -1
- package/dist/module/reducers/reducerKeys.js +3 -2
- package/dist/module/reducers/reducerKeys.js.map +1 -1
- package/dist/module/values.config.default.js +33 -0
- package/dist/module/values.config.default.js.map +1 -0
- package/dist/module/values.config.groups.js +33 -0
- package/dist/module/values.config.groups.js.map +1 -0
- package/dist/module/values.config.js +33 -0
- package/dist/module/values.config.js.map +1 -0
- package/dist/module/webapi/circleActions.js +17 -15
- package/dist/module/webapi/circleActions.js.map +1 -1
- package/dist/module/webapi/helper.js.map +1 -1
- package/dist/module/webapi/index.js.map +1 -1
- package/dist/module/webapi/messageActions.js +3 -2
- package/dist/module/webapi/messageActions.js.map +1 -1
- package/package.json +10 -5
- package/src/actions/GroupActions.js +19 -8
- package/src/actions/types.js +20 -19
- package/src/components/chat/Chat.js +14 -12
- package/src/components/chat/ChatList.js +68 -8
- package/src/components/chat/ContactsList.js +2 -1
- package/src/components/chat/PeoplePage.js +14 -12
- package/src/components/groups/EditGroup.js +9 -6
- package/src/components/groups/GroupDetails.js +2 -1
- package/src/components/groups/GroupsList.js +21 -4
- package/src/components/groups/GroupsWidget.js +10 -4
- package/src/components/groups/NewGroup.js +43 -16
- package/src/components/groups/PublicGroupAction.js +2 -1
- package/src/components/notifications/GroupInviteAction.js +2 -1
- package/src/components/notifications/GroupMessage.js +15 -14
- package/src/config/index.js +3 -2
- package/src/feature.config.js +45 -22
- package/src/index.js +8 -7
- package/src/js/circles/MapStateToDirectMessages.js +10 -0
- package/src/js/index.js +4 -0
- package/src/reducers/reducerKeys.js +4 -2
- package/src/values.config.default.js +39 -0
- package/src/values.config.groups.js +39 -0
- package/src/values.config.js +39 -0
- package/src/webapi/circleActions.js +16 -14
- package/src/webapi/messageActions.js +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["_","START_FETCHING_CIRCLE_CHATS","RECEIVED_CIRCLE_CHATS","DELETED_CIRCLE_CHAT","DISCONNECTED_CIRCLE_CHAT","DISCONNECTED_CIRCLE_CHAT_LIST","BLOCKED_CIRCLE_USER","RECEIVED_BLOCKED_CIRCLE_USERS","RECEIVED_CIRCLE_MESSAGES","createChat","users","title","console","log","deleteChat","chatKey","dispatch","deletedChat","disconnectChatList","disconnectedChatList","disconnectChat","disconnectedChat","blockUser","userKey","targetUserKey","blockedUser","type","payload","startFetchingChats","receivedChats","chats","unreadCount","forEach","chat","unread","receivedBlockedUsers","blocked","updateChatMessages","messages"],"sources":["ChatActions.js"],"sourcesContent":["import _ from 'lodash';\nimport {\n START_FETCHING_CIRCLE_CHATS,\n RECEIVED_CIRCLE_CHATS,\n DELETED_CIRCLE_CHAT,\n DISCONNECTED_CIRCLE_CHAT,\n DISCONNECTED_CIRCLE_CHAT_LIST,\n BLOCKED_CIRCLE_USER,\n RECEIVED_BLOCKED_CIRCLE_USERS,\n RECEIVED_CIRCLE_MESSAGES,\n} from './types';\n\nexport const createChat = (users, title) => {\n console.log('CREATE CHAT ACTION HIT.......???');\n};\n\nexport const deleteChat = chatKey => {\n return async dispatch => {\n dispatch(deletedChat(chatKey));\n };\n};\n\nexport const disconnectChatList = () => {\n return dispatch => {\n dispatch(disconnectedChatList());\n };\n};\n\nexport const disconnectChat = chatKey => {\n return dispatch => {\n dispatch(disconnectedChat());\n };\n};\n\nexport const blockUser = (userKey, targetUserKey) => {\n return async dispatch => {\n dispatch(blockedUser());\n };\n};\n\nconst deletedChat = chatKey => {\n return {\n type: DELETED_CIRCLE_CHAT,\n payload: chatKey,\n };\n};\n\nconst startFetchingChats = () => ({\n type: START_FETCHING_CIRCLE_CHATS,\n});\n\nconst receivedChats = (chats, userKey) => {\n // Calculate total unread count\n let unreadCount = 0;\n chats.forEach(chat => {\n if (chat.unread) unreadCount += chat.unread[userKey];\n });\n\n return {\n type: RECEIVED_CIRCLE_CHATS,\n payload: chats,\n unreadCount,\n };\n};\n\nconst disconnectedChatList = () => ({\n type: DISCONNECTED_CIRCLE_CHAT_LIST,\n});\n\nconst disconnectedChat = () => ({\n type: DISCONNECTED_CIRCLE_CHAT,\n});\n\nconst blockedUser = () => {\n return {\n type: BLOCKED_CIRCLE_USER,\n };\n};\n\nconst receivedBlockedUsers = blocked => {\n return {\n type: RECEIVED_BLOCKED_CIRCLE_USERS,\n payload: blocked,\n };\n};\n\nexport const updateChatMessages = (chatKey, messages) => {\n return {\n type: RECEIVED_CIRCLE_MESSAGES,\n payload: { chatKey, messages },\n };\n};\n"],"mappings":"AAAA,OAAOA,CAAP,MAAc,QAAd;AACA,SACEC,2BADF,EAEEC,qBAFF,EAGEC,mBAHF,EAIEC,wBAJF,EAKEC,6BALF,EAMEC,mBANF,EAOEC,6BAPF,EAQEC,wBARF,QASO,SATP;AAWA,OAAO,MAAMC,UAAU,GAAG,CAACC,KAAD,EAAQC,KAAR,KAAkB;EAC1CC,OAAO,CAACC,GAAR,CAAY,kCAAZ;AACD,CAFM;AAIP,OAAO,MAAMC,UAAU,GAAGC,OAAO,IAAI;EACnC,OAAO,MAAMC,QAAN,IAAkB;IACvBA,QAAQ,CAACC,WAAW,CAACF,OAAD,CAAZ,CAAR;EACD,CAFD;AAGD,CAJM;AAMP,OAAO,MAAMG,kBAAkB,GAAG,MAAM;EACtC,OAAOF,QAAQ,IAAI;IACjBA,QAAQ,CAACG,oBAAoB,EAArB,CAAR;EACD,CAFD;AAGD,CAJM;AAMP,OAAO,MAAMC,cAAc,GAAGL,OAAO,IAAI;EACvC,OAAOC,QAAQ,IAAI;IACjBA,QAAQ,CAACK,gBAAgB,EAAjB,CAAR;EACD,CAFD;AAGD,CAJM;AAMP,OAAO,MAAMC,SAAS,GAAG,CAACC,OAAD,EAAUC,aAAV,KAA4B;EACnD,OAAO,MAAMR,QAAN,IAAkB;IACvBA,QAAQ,CAACS,WAAW,EAAZ,CAAR;EACD,CAFD;AAGD,CAJM;;AAMP,MAAMR,WAAW,GAAGF,OAAO,IAAI;EAC7B,OAAO;IACLW,IAAI,EAAEvB,mBADD;IAELwB,OAAO,EAAEZ;EAFJ,CAAP;AAID,CALD;;AAOA,MAAMa,kBAAkB,GAAG,OAAO;EAChCF,IAAI,EAAEzB;AAD0B,CAAP,CAA3B;;AAIA,MAAM4B,aAAa,GAAG,CAACC,KAAD,EAAQP,OAAR,KAAoB;EACxC;EACA,IAAIQ,WAAW,GAAG,CAAlB;EACAD,KAAK,CAACE,OAAN,CAAcC,IAAI,IAAI;IACpB,IAAIA,IAAI,CAACC,MAAT,EAAiBH,WAAW,IAAIE,IAAI,CAACC,MAAL,CAAYX,OAAZ,CAAf;EAClB,CAFD;EAIA,OAAO;IACLG,IAAI,EAAExB,qBADD;IAELyB,OAAO,EAAEG,KAFJ;IAGLC;EAHK,CAAP;AAKD,CAZD;;AAcA,MAAMZ,oBAAoB,GAAG,OAAO;EAClCO,IAAI,EAAErB;AAD4B,CAAP,CAA7B;;AAIA,MAAMgB,gBAAgB,GAAG,OAAO;EAC9BK,IAAI,EAAEtB;AADwB,CAAP,CAAzB;;AAIA,MAAMqB,WAAW,GAAG,MAAM;EACxB,OAAO;IACLC,IAAI,EAAEpB;EADD,CAAP;AAGD,CAJD;;AAMA,MAAM6B,oBAAoB,GAAGC,OAAO,IAAI;EACtC,OAAO;IACLV,IAAI,EAAEnB,6BADD;IAELoB,OAAO,EAAES;EAFJ,CAAP;AAID,CALD;;AAOA,OAAO,MAAMC,kBAAkB,GAAG,CAACtB,OAAD,EAAUuB,QAAV,KAAuB;EACvD,OAAO;IACLZ,IAAI,EAAElB,wBADD;IAELmB,OAAO,EAAE;MAAEZ,OAAF;MAAWuB;IAAX;EAFJ,CAAP;AAID,CALM"}
|
|
@@ -4,6 +4,16 @@ import { getUrl } from '../webapi/helper';
|
|
|
4
4
|
import { getSessionTokenAWS, getSessionUidAWS, authedFunction } from '../js';
|
|
5
5
|
import NavigationService from '../js/NavigationService';
|
|
6
6
|
import { PUBLIC_CIRCLES_LOAD_INITIALISE, CIRCLES_LOAD_INITIALISE, CIRCLE_INVITES_UPDATED, CIRCLE_INVITES_LOADED, CREATED_CIRCLE, CIRCLES_LOADED, UPDATE_CIRCLE_UNREAD, CLEAR_SINGLE_CIRCLE_UNREAD } from './types';
|
|
7
|
+
import { values } from '../values.config';
|
|
8
|
+
export const refreshGroups = () => {
|
|
9
|
+
return async dispatch => {
|
|
10
|
+
const res = await circleActions.getGroups();
|
|
11
|
+
dispatch({
|
|
12
|
+
type: CIRCLES_LOAD_INITIALISE,
|
|
13
|
+
payload: res.data.Items
|
|
14
|
+
});
|
|
15
|
+
};
|
|
16
|
+
};
|
|
7
17
|
export const loadGroups = groups => {
|
|
8
18
|
return dispatch => {
|
|
9
19
|
dispatch({
|
|
@@ -140,10 +150,10 @@ export const handleGroupInvite = (invite, action, tempUserId) => {
|
|
|
140
150
|
payload: [tempEvent]
|
|
141
151
|
});
|
|
142
152
|
setTimeout(() => {
|
|
143
|
-
NavigationService.navigate(
|
|
153
|
+
NavigationService.navigate(values.screenCircleChat, {
|
|
144
154
|
chat,
|
|
145
155
|
new: true,
|
|
146
|
-
back:
|
|
156
|
+
back: values.screenCircleChatList
|
|
147
157
|
});
|
|
148
158
|
}, 100);
|
|
149
159
|
}
|
|
@@ -158,7 +168,7 @@ export const handleGroupInvite = (invite, action, tempUserId) => {
|
|
|
158
168
|
if (userID != null) {
|
|
159
169
|
await authedFunction({
|
|
160
170
|
method: 'post',
|
|
161
|
-
url: getUrl(
|
|
171
|
+
url: getUrl(values.serviceKey, 'handleGroupInvite'),
|
|
162
172
|
data: {
|
|
163
173
|
userID,
|
|
164
174
|
inviteID: invite.Id,
|
|
@@ -197,10 +207,10 @@ export const joinGroup = group => {
|
|
|
197
207
|
payload: [tempGroup]
|
|
198
208
|
});
|
|
199
209
|
setTimeout(() => {
|
|
200
|
-
NavigationService.navigate(
|
|
210
|
+
NavigationService.navigate(values.screenCircleChat, {
|
|
201
211
|
chat,
|
|
202
212
|
new: true,
|
|
203
|
-
back:
|
|
213
|
+
back: values.screenCircleChatList
|
|
204
214
|
});
|
|
205
215
|
}, 100);
|
|
206
216
|
await circleActions.joinGroup(group.Id).then(res => {
|
|
@@ -224,7 +234,7 @@ export const softLeaveGroup = group => {
|
|
|
224
234
|
});
|
|
225
235
|
await authedFunction({
|
|
226
236
|
method: 'post',
|
|
227
|
-
url: getUrl(
|
|
237
|
+
url: getUrl(values.serviceKey, 'leaveGroup'),
|
|
228
238
|
data: {
|
|
229
239
|
groupID: group.Id
|
|
230
240
|
}
|
|
@@ -254,7 +264,7 @@ export const deleteGroup = group => {
|
|
|
254
264
|
if (userID != null && token != null) {
|
|
255
265
|
await authedFunction({
|
|
256
266
|
method: 'post',
|
|
257
|
-
url: getUrl(
|
|
267
|
+
url: getUrl(values.serviceKey, 'deleteUsersGroup'),
|
|
258
268
|
data: {
|
|
259
269
|
userID,
|
|
260
270
|
group
|
|
@@ -308,7 +318,7 @@ export const editGroup = (group, usersToAdd, usersToRemove) => {
|
|
|
308
318
|
if (userID != null && token != null) {
|
|
309
319
|
await authedFunction({
|
|
310
320
|
method: 'post',
|
|
311
|
-
url: getUrl(
|
|
321
|
+
url: getUrl(values.serviceKey, 'editUsersGroup'),
|
|
312
322
|
data: {
|
|
313
323
|
userID,
|
|
314
324
|
group,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["GroupActions.js"],"names":["_","circleActions","getUrl","getSessionTokenAWS","getSessionUidAWS","authedFunction","NavigationService","PUBLIC_CIRCLES_LOAD_INITIALISE","CIRCLES_LOAD_INITIALISE","CIRCLE_INVITES_UPDATED","CIRCLE_INVITES_LOADED","CREATED_CIRCLE","CIRCLES_LOADED","UPDATE_CIRCLE_UNREAD","CLEAR_SINGLE_CIRCLE_UNREAD","loadGroups","groups","dispatch","type","payload","updatePublicGroups","publicGroups","updateGroups","updateUnreadCounter","userId","isEmpty","counter","forEach","element","Deleted","isUndefined","Unread","clearGroupCounter","groupId","isPrivate","clearGroupUnread","createGroup","group","updateInvites","invites","getGroupInvites","userID","token","then","userEyeDee","catch","console","log","sessionToken","res","data","Items","err","handleGroupInvite","invite","action","tempUserId","tempEvent","clone","newInvite","cloneDeep","fetchingLatest","ads","findIndex","Invites","item","userToUse","splice","Audience","push","chat","key","Id","title","Title","unread","userKeys","userNames","userProfilePics","setTimeout","navigate","new","back","method","url","inviteID","joinGroup","tempGroup","softLeaveGroup","newGroup","groupID","deleteGroup","headers","authorization","editGroup","usersToAdd","usersToRemove","localGroup","filter","user","some"],"mappings":"AAAA,OAAOA,CAAP,MAAc,QAAd;AACA,SAASC,aAAT,QAA8B,WAA9B;AACA,SAASC,MAAT,QAAuB,kBAAvB;AACA,SAASC,kBAAT,EAA6BC,gBAA7B,EAA+CC,cAA/C,QAAqE,OAArE;AACA,OAAOC,iBAAP,MAA8B,yBAA9B;AACA,SACEC,8BADF,EAEEC,uBAFF,EAGEC,sBAHF,EAIEC,qBAJF,EAKEC,cALF,EAMEC,cANF,EAOEC,oBAPF,EAQEC,0BARF,QASO,SATP;AAWA,OAAO,MAAMC,UAAU,GAAGC,MAAM,IAAI;AAClC,SAAOC,QAAQ,IAAI;AACjBA,IAAAA,QAAQ,CAAC;AACPC,MAAAA,IAAI,EAAEN,cADC;AAEPO,MAAAA,OAAO,EAAEH;AAFF,KAAD,CAAR;AAID,GALD;AAMD,CAPM;AASP,OAAO,MAAMI,kBAAkB,GAAGC,YAAY,IAAI;AAChD,SAAO,MAAMJ,QAAN,IAAkB;AACvBA,IAAAA,QAAQ,CAAC;AACPC,MAAAA,IAAI,EAAEX,8BADC;AAEPY,MAAAA,OAAO,EAAEE;AAFF,KAAD,CAAR;AAID,GALD;AAMD,CAPM;AASP,OAAO,MAAMC,YAAY,GAAGN,MAAM,IAAI;AACpC,SAAO,MAAMC,QAAN,IAAkB;AACvBA,IAAAA,QAAQ,CAAC;AACPC,MAAAA,IAAI,EAAEV,uBADC;AAEPW,MAAAA,OAAO,EAAEH;AAFF,KAAD,CAAR;AAID,GALD;AAMD,CAPM;AASP,OAAO,MAAMO,mBAAmB,GAAG,CAACP,MAAD,EAASQ,MAAT,KAAoB;AACrD,SAAO,MAAMP,QAAN,IAAkB;AACvB,QAAI,CAACjB,CAAC,CAACyB,OAAF,CAAUT,MAAV,CAAL,EAAwB;AACtB,UAAIU,OAAO,GAAG,CAAd;AACAV,MAAAA,MAAM,CAACW,OAAP,CAAeC,OAAO,IAAI;AACxB,YAAI,CAACA,OAAO,CAACC,OAAT,IAAoB,CAAC7B,CAAC,CAAC8B,WAAF,CAAcF,OAAO,CAACG,MAAtB,CAArB,IAAsD,CAAC/B,CAAC,CAACyB,OAAF,CAAUG,OAAO,CAACG,MAAlB,CAAvD,IAAoF,CAAC/B,CAAC,CAAC8B,WAAF,CAAcF,OAAO,CAACG,MAAR,CAAeP,MAAf,CAAd,CAAzF,EAAgI;AAC9HE,UAAAA,OAAO,IAAIE,OAAO,CAACG,MAAR,CAAeP,MAAf,CAAX;AACD;AACF,OAJD;AAMAP,MAAAA,QAAQ,CAAC;AACPC,QAAAA,IAAI,EAAEL,oBADC;AAEPM,QAAAA,OAAO,EAAEO;AAFF,OAAD,CAAR;AAID;AACF,GAdD;AAeD,CAhBM;AAkBP,OAAO,MAAMM,iBAAiB,GAAG,CAACC,OAAD,EAAUT,MAAV,EAAkBU,SAAlB,KAAgC;AAC/DjC,EAAAA,aAAa,CAACkC,gBAAd,CAA+BF,OAA/B,EAAwCT,MAAxC;AACA,SAAO;AACLN,IAAAA,IAAI,EAAEJ,0BADD;AAELK,IAAAA,OAAO,EAAE;AAAEc,MAAAA,OAAF;AAAWT,MAAAA,MAAX;AAAmBU,MAAAA;AAAnB;AAFJ,GAAP;AAID,CANM;AAQP,OAAO,MAAME,WAAW,GAAGC,KAAK,IAAI;AAClC,SAAOpB,QAAQ,IAAI;AACjBA,IAAAA,QAAQ,CAAC;AACPC,MAAAA,IAAI,EAAEP,cADC;AAEPQ,MAAAA,OAAO,EAAEkB;AAFF,KAAD,CAAR;AAIA;AACJ;AACA;AACA;AACA;AACA;AACG,GAXD;AAYD,CAbM;AAeP,OAAO,MAAMC,aAAa,GAAGC,OAAO,IAAI;AACtC,SAAOtB,QAAQ,IAAI;AACjBA,IAAAA,QAAQ,CAAC;AACPC,MAAAA,IAAI,EAAER,qBADC;AAEPS,MAAAA,OAAO,EAAEoB;AAFF,KAAD,CAAR;AAID,GALD;AAMD,CAPM;AASP,OAAO,MAAMC,eAAe,GAAG,MAAM;AACnC,SAAO,MAAMvB,QAAN,IAAkB;AACvB,QAAIwB,MAAM,GAAG,IAAb;AACA,QAAIC,KAAK,GAAG,IAAZ;AACA,UAAMtC,gBAAgB,GACnBuC,IADG,CACEC,UAAU,IAAI;AAClBH,MAAAA,MAAM,GAAGG,UAAT;AACD,KAHG,EAIHC,KAJG,CAIG,MAAM;AACXC,MAAAA,OAAO,CAACC,GAAR,CAAY,uCAAZ;AACD,KANG,CAAN;AAOA,UAAM5C,kBAAkB,CAAC,QAAD,CAAlB,CACHwC,IADG,CACEK,YAAY,IAAI;AACpBN,MAAAA,KAAK,GAAGM,YAAR;AACD,KAHG,EAIHH,KAJG,CAIG,MAAM;AACXC,MAAAA,OAAO,CAACC,GAAR,CAAY,qCAAZ;AACD,KANG,CAAN;;AAOA,QAAIN,MAAM,IAAI,IAAV,IAAkBC,KAAK,IAAI,IAA/B,EAAqC;AACnCzC,MAAAA,aAAa,CACVuC,eADH,CACmBC,MADnB,EAC2BC,KAD3B,EAEGC,IAFH,CAEQM,GAAG,IAAI;AACXhC,QAAAA,QAAQ,CAAC;AACPC,UAAAA,IAAI,EAAER,qBADC;AAEPS,UAAAA,OAAO,EAAE8B,GAAG,CAACC,IAAJ,CAASC;AAFX,SAAD,CAAR;AAID,OAPH,EAQGN,KARH,CAQSO,GAAG,IAAI;AACZN,QAAAA,OAAO,CAACC,GAAR,CAAY,2BAAZ;AACAD,QAAAA,OAAO,CAACC,GAAR,CAAYK,GAAZ;AACD,OAXH;AAYD;AACF,GA/BD;AAgCD,CAjCM;AAmCP,OAAO,MAAMC,iBAAiB,GAAG,CAACC,MAAD,EAASC,MAAT,EAAiBC,UAAjB,KAAgC;AAC/D,QAAMC,SAAS,GAAGzD,CAAC,CAAC0D,KAAF,CAAQJ,MAAR,CAAlB;;AACA,QAAMK,SAAS,GAAG3D,CAAC,CAAC4D,SAAF,CAAYN,MAAZ,CAAlB;;AACAK,EAAAA,SAAS,CAAC9B,OAAV,GAAoB,IAApB;AACA,SAAO,MAAMZ,QAAN,IAAkB;AACvBA,IAAAA,QAAQ,CAAC;AACPC,MAAAA,IAAI,EAAET,sBADC;AAEPU,MAAAA,OAAO,EAAE,CAACwC,SAAD;AAFF,KAAD,CAAR;;AAIA,QAAIJ,MAAJ,EAAY;AACVE,MAAAA,SAAS,CAACI,cAAV,GAA2B,IAA3B;;AACA,YAAMC,GAAG,GAAG9D,CAAC,CAAC+D,SAAF,CAAYN,SAAS,CAACO,OAAtB,EAA+BC,IAAI,IAAI;AACjD,eAAOA,IAAI,CAACzC,MAAL,KAAgBgC,UAAvB;AACD,OAFW,CAAZ;;AAGA,YAAMU,SAAS,GAAGT,SAAS,CAACO,OAAV,CAAkBF,GAAlB,CAAlB;AACAL,MAAAA,SAAS,CAACO,OAAV,CAAkBG,MAAlB,CAAyBL,GAAzB,EAA8B,CAA9B;AACAL,MAAAA,SAAS,CAACW,QAAV,CAAmBC,IAAnB,CAAwBH,SAAxB;AAEA,YAAMI,IAAI,GAAG;AACXC,QAAAA,GAAG,EAAEjB,MAAM,CAACkB,EADD;AAEXC,QAAAA,KAAK,EAAEnB,MAAM,CAACoB,KAFH;AAGXC,QAAAA,MAAM,EAAE,EAHG;AAIXC,QAAAA,QAAQ,EAAE,EAJC;AAKXC,QAAAA,SAAS,EAAE,EALA;AAMXC,QAAAA,eAAe,EAAE;AANN,OAAb;AAQA7D,MAAAA,QAAQ,CAAC;AACPC,QAAAA,IAAI,EAAEN,cADC;AAEPO,QAAAA,OAAO,EAAE,CAACsC,SAAD;AAFF,OAAD,CAAR;AAIAsB,MAAAA,UAAU,CAAC,MAAM;AACfzE,QAAAA,iBAAiB,CAAC0E,QAAlB,CAA2B,YAA3B,EAAyC;AACvCV,UAAAA,IADuC;AAEvCW,UAAAA,GAAG,EAAE,IAFkC;AAGvCC,UAAAA,IAAI,EAAE;AAHiC,SAAzC;AAKD,OANS,EAMP,GANO,CAAV;AAOD;;AAED,QAAIzC,MAAM,GAAG,IAAb;AACA,UAAMrC,gBAAgB,GACnBuC,IADG,CACEC,UAAU,IAAI;AAClBH,MAAAA,MAAM,GAAGG,UAAT;AACD,KAHG,EAIHC,KAJG,CAIG,MAAM;AACXC,MAAAA,OAAO,CAACC,GAAR,CAAY,uCAAZ;AACD,KANG,CAAN;;AAQA,QAAIN,MAAM,IAAI,IAAd,EAAoB;AAClB,YAAMpC,cAAc,CAAC;AACnB8E,QAAAA,MAAM,EAAE,MADW;AAEnBC,QAAAA,GAAG,EAAElF,MAAM,CAAC,SAAD,EAAY,mBAAZ,CAFQ;AAGnBgD,QAAAA,IAAI,EAAE;AACJT,UAAAA,MADI;AAEJ4C,UAAAA,QAAQ,EAAE/B,MAAM,CAACkB,EAFb;AAGJjB,UAAAA;AAHI;AAHa,OAAD,CAAd,CASHZ,IATG,CASEM,GAAG,IAAI;AACX,YAAIM,MAAJ,EAAY;AACVtC,UAAAA,QAAQ,CAAC;AACPC,YAAAA,IAAI,EAAEN,cADC;AAEPO,YAAAA,OAAO,EAAE,CAAC8B,GAAG,CAACC,IAAJ,CAASb,KAAV;AAFF,WAAD,CAAR;AAID;AACF,OAhBG,EAiBHQ,KAjBG,CAiBGO,GAAG,IAAI;AACZN,QAAAA,OAAO,CAACC,GAAR,CAAY,0BAAZ,EAAwCK,GAAxC;AACD,OAnBG,CAAN;AAoBD,KArBD,MAqBO;AACLN,MAAAA,OAAO,CAACC,GAAR,CAAY,SAAZ;AACD;AACF,GApED;AAqED,CAzEM;AA2EP,OAAO,MAAMuC,SAAS,GAAGjD,KAAK,IAAI;AAChC,QAAMkD,SAAS,GAAGvF,CAAC,CAAC0D,KAAF,CAAQrB,KAAR,CAAlB;;AACA,SAAO,MAAMpB,QAAN,IAAkB;AACvBsE,IAAAA,SAAS,CAAC1B,cAAV,GAA2B,IAA3B;AAEA,UAAMS,IAAI,GAAG;AACXC,MAAAA,GAAG,EAAElC,KAAK,CAACmC,EADA;AAEXC,MAAAA,KAAK,EAAEpC,KAAK,CAACqC,KAFF;AAGXC,MAAAA,MAAM,EAAE,EAHG;AAIXC,MAAAA,QAAQ,EAAE,EAJC;AAKXC,MAAAA,SAAS,EAAE,EALA;AAMXC,MAAAA,eAAe,EAAE;AANN,KAAb;AAQA7D,IAAAA,QAAQ,CAAC;AACPC,MAAAA,IAAI,EAAEN,cADC;AAEPO,MAAAA,OAAO,EAAE,CAACoE,SAAD;AAFF,KAAD,CAAR;AAIAR,IAAAA,UAAU,CAAC,MAAM;AACfzE,MAAAA,iBAAiB,CAAC0E,QAAlB,CAA2B,YAA3B,EAAyC;AACvCV,QAAAA,IADuC;AAEvCW,QAAAA,GAAG,EAAE,IAFkC;AAGvCC,QAAAA,IAAI,EAAE;AAHiC,OAAzC;AAKD,KANS,EAMP,GANO,CAAV;AAQA,UAAMjF,aAAa,CAChBqF,SADG,CACOjD,KAAK,CAACmC,EADb,EAEH7B,IAFG,CAEEM,GAAG,IAAI;AACXhC,MAAAA,QAAQ,CAAC;AACPC,QAAAA,IAAI,EAAEN,cADC;AAEPO,QAAAA,OAAO,EAAE,CAAC8B,GAAG,CAACC,IAAJ,CAASb,KAAV;AAFF,OAAD,CAAR;AAID,KAPG,EAQHQ,KARG,CAQGO,GAAG,IAAI;AACZN,MAAAA,OAAO,CAACC,GAAR,CAAY,wBAAZ,EAAsCK,GAAtC;AACD,KAVG,CAAN;AAWD,GAlCD;AAmCD,CArCM;AAuCP,OAAO,MAAMoC,cAAc,GAAGnD,KAAK,IAAI;AACrC,QAAMoD,QAAQ,GAAGzF,CAAC,CAAC4D,SAAF,CAAYvB,KAAZ,CAAjB;;AACAoD,EAAAA,QAAQ,CAAC5D,OAAT,GAAmB,IAAnB;AACA,SAAO,MAAMZ,QAAN,IAAkB;AACvBA,IAAAA,QAAQ,CAAC;AACPC,MAAAA,IAAI,EAAEN,cADC;AAEPO,MAAAA,OAAO,EAAE,CAACsE,QAAD;AAFF,KAAD,CAAR;AAIA,UAAMpF,cAAc,CAAC;AACnB8E,MAAAA,MAAM,EAAE,MADW;AAEnBC,MAAAA,GAAG,EAAElF,MAAM,CAAC,SAAD,EAAY,YAAZ,CAFQ;AAGnBgD,MAAAA,IAAI,EAAE;AACJwC,QAAAA,OAAO,EAAErD,KAAK,CAACmC;AADX;AAHa,KAAD,CAApB;AAOD,GAZD;AAaD,CAhBM;AAkBP,OAAO,MAAMmB,WAAW,GAAGtD,KAAK,IAAI;AAClCA,EAAAA,KAAK,CAACR,OAAN,GAAgB,IAAhB;AACA,SAAO,MAAMZ,QAAN,IAAkB;AACvBA,IAAAA,QAAQ,CAAC;AACPC,MAAAA,IAAI,EAAEN,cADC;AAEPO,MAAAA,OAAO,EAAE,CAACkB,KAAD;AAFF,KAAD,CAAR;AAKA,QAAII,MAAM,GAAG,IAAb;AACA,QAAIC,KAAK,GAAG,IAAZ;AACA,UAAMtC,gBAAgB,GACnBuC,IADG,CACEC,UAAU,IAAI;AAClBH,MAAAA,MAAM,GAAGG,UAAT;AACD,KAHG,EAIHC,KAJG,CAIG,MAAM;AACXC,MAAAA,OAAO,CAACC,GAAR,CAAY,uCAAZ;AACD,KANG,CAAN;AAOA,UAAM5C,kBAAkB,CAAC,QAAD,CAAlB,CACHwC,IADG,CACEK,YAAY,IAAI;AACpBN,MAAAA,KAAK,GAAGM,YAAR;AACD,KAHG,EAIHH,KAJG,CAIG,MAAM;AACXC,MAAAA,OAAO,CAACC,GAAR,CAAY,qCAAZ;AACD,KANG,CAAN;;AAOA,QAAIN,MAAM,IAAI,IAAV,IAAkBC,KAAK,IAAI,IAA/B,EAAqC;AACnC,YAAMrC,cAAc,CAAC;AACnB8E,QAAAA,MAAM,EAAE,MADW;AAEnBC,QAAAA,GAAG,EAAElF,MAAM,CAAC,SAAD,EAAY,kBAAZ,CAFQ;AAGnBgD,QAAAA,IAAI,EAAE;AACJT,UAAAA,MADI;AAEJJ,UAAAA;AAFI,SAHa;AAOnBuD,QAAAA,OAAO,EAAE;AACPC,UAAAA,aAAa,EAAEnD;AADR;AAPU,OAAD,CAApB;AAWD;AACF,GAnCD;AAoCD,CAtCM;AAwCP,OAAO,MAAMoD,SAAS,GAAG,CAACzD,KAAD,EAAQ0D,UAAR,EAAoBC,aAApB,KAAsC;AAC7D,SAAO,MAAM/E,QAAN,IAAkB;AACvB;AACA,UAAMgF,UAAU,GAAG,EAAE,GAAG5D;AAAL,KAAnB;;AACA,QAAI,CAAC4D,UAAU,CAACjC,OAAhB,EAAyB;AACvBiC,MAAAA,UAAU,CAACjC,OAAX,GAAqB,EAArB;AACD;;AACDiC,IAAAA,UAAU,CAACjC,OAAX,GAAqBhE,CAAC,CAACkG,MAAF,CAASD,UAAU,CAACjC,OAApB,EAA6BmC,IAAI,IAAI;AACxD,aAAO,CAACnG,CAAC,CAACoG,IAAF,CAAOJ,aAAP,EAAsBxE,MAAM,IAAI;AACtC,eAAO2E,IAAI,CAAC3E,MAAL,KAAgBA,MAAvB;AACD,OAFO,CAAR;AAGD,KAJoB,CAArB;AAKAyE,IAAAA,UAAU,CAACjC,OAAX,GAAqB,CAAC,GAAGiC,UAAU,CAACjC,OAAf,EAAwB,GAAG+B,UAA3B,CAArB;AACAE,IAAAA,UAAU,CAAC7B,QAAX,GAAsBpE,CAAC,CAACkG,MAAF,CAASD,UAAU,CAAC7B,QAApB,EAA8B+B,IAAI,IAAI;AAC1D,aAAO,CAACnG,CAAC,CAACoG,IAAF,CAAOJ,aAAP,EAAsBxE,MAAM,IAAI;AACtC,eAAO2E,IAAI,CAAC3E,MAAL,KAAgBA,MAAvB;AACD,OAFO,CAAR;AAGD,KAJqB,CAAtB;AAKAP,IAAAA,QAAQ,CAAC;AACPC,MAAAA,IAAI,EAAEN,cADC;AAEPO,MAAAA,OAAO,EAAE,CAAC8E,UAAD;AAFF,KAAD,CAAR,CAjBuB,CAsBvB;;AACA,QAAIxD,MAAM,GAAG,IAAb;AACA,QAAIC,KAAK,GAAG,IAAZ;AACA,UAAMtC,gBAAgB,GACnBuC,IADG,CACEC,UAAU,IAAI;AAClBH,MAAAA,MAAM,GAAGG,UAAT;AACD,KAHG,EAIHC,KAJG,CAIG,MAAM;AACXC,MAAAA,OAAO,CAACC,GAAR,CAAY,uCAAZ;AACD,KANG,CAAN;AAOA,UAAM5C,kBAAkB,CAAC,QAAD,CAAlB,CACHwC,IADG,CACEK,YAAY,IAAI;AACpBN,MAAAA,KAAK,GAAGM,YAAR;AACD,KAHG,EAIHH,KAJG,CAIG,MAAM;AACXC,MAAAA,OAAO,CAACC,GAAR,CAAY,qCAAZ;AACD,KANG,CAAN;;AAOA,QAAIN,MAAM,IAAI,IAAV,IAAkBC,KAAK,IAAI,IAA/B,EAAqC;AACnC,YAAMrC,cAAc,CAAC;AACnB8E,QAAAA,MAAM,EAAE,MADW;AAEnBC,QAAAA,GAAG,EAAElF,MAAM,CAAC,SAAD,EAAY,gBAAZ,CAFQ;AAGnBgD,QAAAA,IAAI,EAAE;AACJT,UAAAA,MADI;AAEJJ,UAAAA,KAFI;AAGJ0D,UAAAA,UAHI;AAIJC,UAAAA;AAJI,SAHa;AASnBJ,QAAAA,OAAO,EAAE;AACPC,UAAAA,aAAa,EAAEnD;AADR;AATU,OAAD,CAApB;AAaD;AACF,GAtDD;AAuDD,CAxDM","sourcesContent":["import _ from 'lodash';\nimport { circleActions } from '../webapi';\nimport { getUrl } from '../webapi/helper';\nimport { getSessionTokenAWS, getSessionUidAWS, authedFunction } from '../js';\nimport NavigationService from '../js/NavigationService';\nimport {\n PUBLIC_CIRCLES_LOAD_INITIALISE,\n CIRCLES_LOAD_INITIALISE,\n CIRCLE_INVITES_UPDATED,\n CIRCLE_INVITES_LOADED,\n CREATED_CIRCLE,\n CIRCLES_LOADED,\n UPDATE_CIRCLE_UNREAD,\n CLEAR_SINGLE_CIRCLE_UNREAD,\n} from './types';\n\nexport const loadGroups = groups => {\n return dispatch => {\n dispatch({\n type: CIRCLES_LOADED,\n payload: groups,\n });\n };\n};\n\nexport const updatePublicGroups = publicGroups => {\n return async dispatch => {\n dispatch({\n type: PUBLIC_CIRCLES_LOAD_INITIALISE,\n payload: publicGroups,\n });\n };\n};\n\nexport const updateGroups = groups => {\n return async dispatch => {\n dispatch({\n type: CIRCLES_LOAD_INITIALISE,\n payload: groups,\n });\n };\n};\n\nexport const updateUnreadCounter = (groups, userId) => {\n return async dispatch => {\n if (!_.isEmpty(groups)) {\n let counter = 0;\n groups.forEach(element => {\n if (!element.Deleted && !_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[userId])) {\n counter += element.Unread[userId];\n }\n });\n\n dispatch({\n type: UPDATE_CIRCLE_UNREAD,\n payload: counter,\n });\n }\n };\n};\n\nexport const clearGroupCounter = (groupId, userId, isPrivate) => {\n circleActions.clearGroupUnread(groupId, userId);\n return {\n type: CLEAR_SINGLE_CIRCLE_UNREAD,\n payload: { groupId, userId, isPrivate },\n };\n};\n\nexport const createGroup = group => {\n return dispatch => {\n dispatch({\n type: CREATED_CIRCLE,\n payload: group,\n });\n /* if (events != null && events.length > 0) {\n dispatch({\n type: UPDATE_EVENT_TIMEFRAME,\n payload: null\n });\n } */\n };\n};\n\nexport const updateInvites = invites => {\n return dispatch => {\n dispatch({\n type: CIRCLE_INVITES_LOADED,\n payload: invites,\n });\n };\n};\n\nexport const getGroupInvites = () => {\n return async dispatch => {\n let userID = null;\n let token = null;\n await getSessionUidAWS()\n .then(userEyeDee => {\n userID = userEyeDee;\n })\n .catch(() => {\n console.log('FAIL AT FETCH USER ID -- Silent Upate');\n });\n await getSessionTokenAWS('Bearer')\n .then(sessionToken => {\n token = sessionToken;\n })\n .catch(() => {\n console.log('FAIL AT FETCH TOKEN -- Silent Upate');\n });\n if (userID != null && token != null) {\n circleActions\n .getGroupInvites(userID, token)\n .then(res => {\n dispatch({\n type: CIRCLE_INVITES_LOADED,\n payload: res.data.Items,\n });\n })\n .catch(err => {\n console.log('fetch circle invites FAIL');\n console.log(err);\n });\n }\n };\n};\n\nexport const handleGroupInvite = (invite, action, tempUserId) => {\n const tempEvent = _.clone(invite);\n const newInvite = _.cloneDeep(invite);\n newInvite.Deleted = true;\n return async dispatch => {\n dispatch({\n type: CIRCLE_INVITES_UPDATED,\n payload: [newInvite],\n });\n if (action) {\n tempEvent.fetchingLatest = true;\n const ads = _.findIndex(tempEvent.Invites, item => {\n return item.userId === tempUserId;\n });\n const userToUse = tempEvent.Invites[ads];\n tempEvent.Invites.splice(ads, 1);\n tempEvent.Audience.push(userToUse);\n\n const chat = {\n key: invite.Id,\n title: invite.Title,\n unread: [],\n userKeys: [],\n userNames: [],\n userProfilePics: [],\n };\n dispatch({\n type: CIRCLES_LOADED,\n payload: [tempEvent],\n });\n setTimeout(() => {\n NavigationService.navigate('circleChat', {\n chat,\n new: true,\n back: 'circleChatList',\n });\n }, 100);\n }\n\n let userID = null;\n await getSessionUidAWS()\n .then(userEyeDee => {\n userID = userEyeDee;\n })\n .catch(() => {\n console.log('FAIL AT FETCH USER ID -- Silent Upate');\n });\n\n if (userID != null) {\n await authedFunction({\n method: 'post',\n url: getUrl('circles', 'handleGroupInvite'),\n data: {\n userID,\n inviteID: invite.Id,\n action,\n },\n })\n .then(res => {\n if (action) {\n dispatch({\n type: CIRCLES_LOADED,\n payload: [res.data.group],\n });\n }\n })\n .catch(err => {\n console.log('handle event invite fail', err);\n });\n } else {\n console.log('no user');\n }\n };\n};\n\nexport const joinGroup = group => {\n const tempGroup = _.clone(group);\n return async dispatch => {\n tempGroup.fetchingLatest = true;\n\n const chat = {\n key: group.Id,\n title: group.Title,\n unread: [],\n userKeys: [],\n userNames: [],\n userProfilePics: [],\n };\n dispatch({\n type: CIRCLES_LOADED,\n payload: [tempGroup],\n });\n setTimeout(() => {\n NavigationService.navigate('circleChat', {\n chat,\n new: true,\n back: 'circleChatList',\n });\n }, 100);\n\n await circleActions\n .joinGroup(group.Id)\n .then(res => {\n dispatch({\n type: CIRCLES_LOADED,\n payload: [res.data.group],\n });\n })\n .catch(err => {\n console.log('handle join group fail', err);\n });\n };\n};\n\nexport const softLeaveGroup = group => {\n const newGroup = _.cloneDeep(group);\n newGroup.Deleted = true;\n return async dispatch => {\n dispatch({\n type: CIRCLES_LOADED,\n payload: [newGroup],\n });\n await authedFunction({\n method: 'post',\n url: getUrl('circles', 'leaveGroup'),\n data: {\n groupID: group.Id,\n },\n });\n };\n};\n\nexport const deleteGroup = group => {\n group.Deleted = true;\n return async dispatch => {\n dispatch({\n type: CIRCLES_LOADED,\n payload: [group],\n });\n\n let userID = null;\n let token = null;\n await getSessionUidAWS()\n .then(userEyeDee => {\n userID = userEyeDee;\n })\n .catch(() => {\n console.log('FAIL AT FETCH USER ID -- Silent Upate');\n });\n await getSessionTokenAWS('Bearer')\n .then(sessionToken => {\n token = sessionToken;\n })\n .catch(() => {\n console.log('FAIL AT FETCH TOKEN -- Silent Upate');\n });\n if (userID != null && token != null) {\n await authedFunction({\n method: 'post',\n url: getUrl('circles', 'deleteUsersGroup'),\n data: {\n userID,\n group,\n },\n headers: {\n authorization: token,\n },\n });\n }\n };\n};\n\nexport const editGroup = (group, usersToAdd, usersToRemove) => {\n return async dispatch => {\n // push to local store\n const localGroup = { ...group };\n if (!localGroup.Invites) {\n localGroup.Invites = [];\n }\n localGroup.Invites = _.filter(localGroup.Invites, user => {\n return !_.some(usersToRemove, userId => {\n return user.userId === userId;\n });\n });\n localGroup.Invites = [...localGroup.Invites, ...usersToAdd];\n localGroup.Audience = _.filter(localGroup.Audience, user => {\n return !_.some(usersToRemove, userId => {\n return user.userId === userId;\n });\n });\n dispatch({\n type: CIRCLES_LOADED,\n payload: [localGroup],\n });\n\n // save to database\n let userID = null;\n let token = null;\n await getSessionUidAWS()\n .then(userEyeDee => {\n userID = userEyeDee;\n })\n .catch(() => {\n console.log('FAIL AT FETCH USER ID -- Silent Upate');\n });\n await getSessionTokenAWS('Bearer')\n .then(sessionToken => {\n token = sessionToken;\n })\n .catch(() => {\n console.log('FAIL AT FETCH TOKEN -- Silent Upate');\n });\n if (userID != null && token != null) {\n await authedFunction({\n method: 'post',\n url: getUrl('circles', 'editUsersGroup'),\n data: {\n userID,\n group,\n usersToAdd,\n usersToRemove,\n },\n headers: {\n authorization: token,\n },\n });\n }\n };\n};\n"]}
|
|
1
|
+
{"version":3,"names":["_","circleActions","getUrl","getSessionTokenAWS","getSessionUidAWS","authedFunction","NavigationService","PUBLIC_CIRCLES_LOAD_INITIALISE","CIRCLES_LOAD_INITIALISE","CIRCLE_INVITES_UPDATED","CIRCLE_INVITES_LOADED","CREATED_CIRCLE","CIRCLES_LOADED","UPDATE_CIRCLE_UNREAD","CLEAR_SINGLE_CIRCLE_UNREAD","values","refreshGroups","dispatch","res","getGroups","type","payload","data","Items","loadGroups","groups","updatePublicGroups","publicGroups","updateGroups","updateUnreadCounter","userId","isEmpty","counter","forEach","element","Deleted","isUndefined","Unread","clearGroupCounter","groupId","isPrivate","clearGroupUnread","createGroup","group","updateInvites","invites","getGroupInvites","userID","token","then","userEyeDee","catch","console","log","sessionToken","err","handleGroupInvite","invite","action","tempUserId","tempEvent","clone","newInvite","cloneDeep","fetchingLatest","ads","findIndex","Invites","item","userToUse","splice","Audience","push","chat","key","Id","title","Title","unread","userKeys","userNames","userProfilePics","setTimeout","navigate","screenCircleChat","new","back","screenCircleChatList","method","url","serviceKey","inviteID","joinGroup","tempGroup","softLeaveGroup","newGroup","groupID","deleteGroup","headers","authorization","editGroup","usersToAdd","usersToRemove","localGroup","filter","user","some"],"sources":["GroupActions.js"],"sourcesContent":["import _ from 'lodash';\nimport { circleActions } from '../webapi';\nimport { getUrl } from '../webapi/helper';\nimport { getSessionTokenAWS, getSessionUidAWS, authedFunction } from '../js';\nimport NavigationService from '../js/NavigationService';\nimport {\n PUBLIC_CIRCLES_LOAD_INITIALISE,\n CIRCLES_LOAD_INITIALISE,\n CIRCLE_INVITES_UPDATED,\n CIRCLE_INVITES_LOADED,\n CREATED_CIRCLE,\n CIRCLES_LOADED,\n UPDATE_CIRCLE_UNREAD,\n CLEAR_SINGLE_CIRCLE_UNREAD,\n} from './types';\nimport { values } from '../values.config';\n\nexport const refreshGroups = () => {\n return async dispatch => {\n const res = await circleActions.getGroups();\n dispatch({\n type: CIRCLES_LOAD_INITIALISE,\n payload: res.data.Items,\n });\n };\n};\n\nexport const loadGroups = groups => {\n return dispatch => {\n dispatch({\n type: CIRCLES_LOADED,\n payload: groups,\n });\n };\n};\n\nexport const updatePublicGroups = publicGroups => {\n return async dispatch => {\n dispatch({\n type: PUBLIC_CIRCLES_LOAD_INITIALISE,\n payload: publicGroups,\n });\n };\n};\n\nexport const updateGroups = groups => {\n return async dispatch => {\n dispatch({\n type: CIRCLES_LOAD_INITIALISE,\n payload: groups,\n });\n };\n};\n\nexport const updateUnreadCounter = (groups, userId) => {\n return async dispatch => {\n if (!_.isEmpty(groups)) {\n let counter = 0;\n groups.forEach(element => {\n if (!element.Deleted && !_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[userId])) {\n counter += element.Unread[userId];\n }\n });\n\n dispatch({\n type: UPDATE_CIRCLE_UNREAD,\n payload: counter,\n });\n }\n };\n};\n\nexport const clearGroupCounter = (groupId, userId, isPrivate) => {\n circleActions.clearGroupUnread(groupId, userId);\n return {\n type: CLEAR_SINGLE_CIRCLE_UNREAD,\n payload: { groupId, userId, isPrivate },\n };\n};\n\nexport const createGroup = group => {\n return dispatch => {\n dispatch({\n type: CREATED_CIRCLE,\n payload: group,\n });\n /* if (events != null && events.length > 0) {\n dispatch({\n type: UPDATE_EVENT_TIMEFRAME,\n payload: null\n });\n } */\n };\n};\n\nexport const updateInvites = invites => {\n return dispatch => {\n dispatch({\n type: CIRCLE_INVITES_LOADED,\n payload: invites,\n });\n };\n};\n\nexport const getGroupInvites = () => {\n return async dispatch => {\n let userID = null;\n let token = null;\n await getSessionUidAWS()\n .then(userEyeDee => {\n userID = userEyeDee;\n })\n .catch(() => {\n console.log('FAIL AT FETCH USER ID -- Silent Upate');\n });\n await getSessionTokenAWS('Bearer')\n .then(sessionToken => {\n token = sessionToken;\n })\n .catch(() => {\n console.log('FAIL AT FETCH TOKEN -- Silent Upate');\n });\n if (userID != null && token != null) {\n circleActions\n .getGroupInvites(userID, token)\n .then(res => {\n dispatch({\n type: CIRCLE_INVITES_LOADED,\n payload: res.data.Items,\n });\n })\n .catch(err => {\n console.log('fetch circle invites FAIL');\n console.log(err);\n });\n }\n };\n};\n\nexport const handleGroupInvite = (invite, action, tempUserId) => {\n const tempEvent = _.clone(invite);\n const newInvite = _.cloneDeep(invite);\n newInvite.Deleted = true;\n return async dispatch => {\n dispatch({\n type: CIRCLE_INVITES_UPDATED,\n payload: [newInvite],\n });\n if (action) {\n tempEvent.fetchingLatest = true;\n const ads = _.findIndex(tempEvent.Invites, item => {\n return item.userId === tempUserId;\n });\n const userToUse = tempEvent.Invites[ads];\n tempEvent.Invites.splice(ads, 1);\n tempEvent.Audience.push(userToUse);\n\n const chat = {\n key: invite.Id,\n title: invite.Title,\n unread: [],\n userKeys: [],\n userNames: [],\n userProfilePics: [],\n };\n dispatch({\n type: CIRCLES_LOADED,\n payload: [tempEvent],\n });\n setTimeout(() => {\n NavigationService.navigate(values.screenCircleChat, {\n chat,\n new: true,\n back: values.screenCircleChatList,\n });\n }, 100);\n }\n\n let userID = null;\n await getSessionUidAWS()\n .then(userEyeDee => {\n userID = userEyeDee;\n })\n .catch(() => {\n console.log('FAIL AT FETCH USER ID -- Silent Upate');\n });\n\n if (userID != null) {\n await authedFunction({\n method: 'post',\n url: getUrl(values.serviceKey, 'handleGroupInvite'),\n data: {\n userID,\n inviteID: invite.Id,\n action,\n },\n })\n .then(res => {\n if (action) {\n dispatch({\n type: CIRCLES_LOADED,\n payload: [res.data.group],\n });\n }\n })\n .catch(err => {\n console.log('handle event invite fail', err);\n });\n } else {\n console.log('no user');\n }\n };\n};\n\nexport const joinGroup = group => {\n const tempGroup = _.clone(group);\n return async dispatch => {\n tempGroup.fetchingLatest = true;\n\n const chat = {\n key: group.Id,\n title: group.Title,\n unread: [],\n userKeys: [],\n userNames: [],\n userProfilePics: [],\n };\n dispatch({\n type: CIRCLES_LOADED,\n payload: [tempGroup],\n });\n setTimeout(() => {\n NavigationService.navigate(values.screenCircleChat, {\n chat,\n new: true,\n back: values.screenCircleChatList,\n });\n }, 100);\n\n await circleActions\n .joinGroup(group.Id)\n .then(res => {\n dispatch({\n type: CIRCLES_LOADED,\n payload: [res.data.group],\n });\n })\n .catch(err => {\n console.log('handle join group fail', err);\n });\n };\n};\n\nexport const softLeaveGroup = group => {\n const newGroup = _.cloneDeep(group);\n newGroup.Deleted = true;\n return async dispatch => {\n dispatch({\n type: CIRCLES_LOADED,\n payload: [newGroup],\n });\n await authedFunction({\n method: 'post',\n url: getUrl(values.serviceKey, 'leaveGroup'),\n data: {\n groupID: group.Id,\n },\n });\n };\n};\n\nexport const deleteGroup = group => {\n group.Deleted = true;\n return async dispatch => {\n dispatch({\n type: CIRCLES_LOADED,\n payload: [group],\n });\n\n let userID = null;\n let token = null;\n await getSessionUidAWS()\n .then(userEyeDee => {\n userID = userEyeDee;\n })\n .catch(() => {\n console.log('FAIL AT FETCH USER ID -- Silent Upate');\n });\n await getSessionTokenAWS('Bearer')\n .then(sessionToken => {\n token = sessionToken;\n })\n .catch(() => {\n console.log('FAIL AT FETCH TOKEN -- Silent Upate');\n });\n if (userID != null && token != null) {\n await authedFunction({\n method: 'post',\n url: getUrl(values.serviceKey, 'deleteUsersGroup'),\n data: {\n userID,\n group,\n },\n headers: {\n authorization: token,\n },\n });\n }\n };\n};\n\nexport const editGroup = (group, usersToAdd, usersToRemove) => {\n return async dispatch => {\n // push to local store\n const localGroup = { ...group };\n if (!localGroup.Invites) {\n localGroup.Invites = [];\n }\n localGroup.Invites = _.filter(localGroup.Invites, user => {\n return !_.some(usersToRemove, userId => {\n return user.userId === userId;\n });\n });\n localGroup.Invites = [...localGroup.Invites, ...usersToAdd];\n localGroup.Audience = _.filter(localGroup.Audience, user => {\n return !_.some(usersToRemove, userId => {\n return user.userId === userId;\n });\n });\n dispatch({\n type: CIRCLES_LOADED,\n payload: [localGroup],\n });\n\n // save to database\n let userID = null;\n let token = null;\n await getSessionUidAWS()\n .then(userEyeDee => {\n userID = userEyeDee;\n })\n .catch(() => {\n console.log('FAIL AT FETCH USER ID -- Silent Upate');\n });\n await getSessionTokenAWS('Bearer')\n .then(sessionToken => {\n token = sessionToken;\n })\n .catch(() => {\n console.log('FAIL AT FETCH TOKEN -- Silent Upate');\n });\n if (userID != null && token != null) {\n await authedFunction({\n method: 'post',\n url: getUrl(values.serviceKey, 'editUsersGroup'),\n data: {\n userID,\n group,\n usersToAdd,\n usersToRemove,\n },\n headers: {\n authorization: token,\n },\n });\n }\n };\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["Actions","getFollowers","addFollower","selectEventTime","residentsLoaded","linkedUsersLoaded","linkedToUsersLoaded","updateNavRead"],"sources":["index.js"],"sourcesContent":["import { Actions } from '../core.config';\n\nexport const getFollowers = Actions.getFollowers;\nexport const addFollower = Actions.addFollower;\nexport const selectEventTime = Actions.selectEventTime;\nexport const residentsLoaded = Actions.residentsLoaded;\nexport const linkedUsersLoaded = Actions.linkedToUsersLoaded;\nexport const linkedToUsersLoaded = Actions.linkedToUsersLoaded;\nexport const updateNavRead = Actions.updateNavRead;\n\n// export * from './AlertActions';\n// export * from './AreaActions';\n// export * from './AuthActions';\n// export * from './ConnectionActions';\n// export * from './UserActions';\n// export * from './EventActions';\n// export * from './FeedbackActions';\n// export * from './PlaceActions';\n// export * from './ReminderActions';\n// export * from './TakeoverActions';\n// export * from './PopularEventsActions';\n// export * from './NavigationActions';\n// export * from './PersonalEventActions';\n// export * from './UserSettingsActions';\nexport * from './ChatActions';\n// export * from './NotificationActions';\n// export * from './ProfileActions';\n// export * from './ContactActions';\n// export * from './EventContactActions';\n// export * from './FollowerActions';\n// export * from './InfoActions';\nexport * from './GroupActions';\n// export * from './GeneralActions';\n// export * from './ResidentActions';\n// export * from './ServiceActions';\n// export * from './OfferActions';\n// export * from './SessionActions';\n// export * from './PaymentActions';\n// export * from './JobActions';\n// export * from './NewsActions';\n// export * from './MediaActions';\n// export * from './FacilityActions';\n// export * from './DeviceActions';\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,gBAAxB;AAEA,OAAO,MAAMC,YAAY,GAAGD,OAAO,CAACC,YAA7B;AACP,OAAO,MAAMC,WAAW,GAAGF,OAAO,CAACE,WAA5B;AACP,OAAO,MAAMC,eAAe,GAAGH,OAAO,CAACG,eAAhC;AACP,OAAO,MAAMC,eAAe,GAAGJ,OAAO,CAACI,eAAhC;AACP,OAAO,MAAMC,iBAAiB,GAAGL,OAAO,CAACM,mBAAlC;AACP,OAAO,MAAMA,mBAAmB,GAAGN,OAAO,CAACM,mBAApC;AACP,OAAO,MAAMC,aAAa,GAAGP,OAAO,CAACO,aAA9B,C,CAEP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,cAAc,eAAd,C,CACA;AACA;AACA;AACA;AACA;AACA;;AACA,cAAc,gBAAd,C,CACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
|
|
@@ -1,25 +1,26 @@
|
|
|
1
|
+
import { values } from '../values.config';
|
|
1
2
|
import { ActionTypes } from '../core.config';
|
|
2
3
|
export const LOGOUT = ActionTypes.LOGOUT;
|
|
3
4
|
export const CHANGE_ROLE = ActionTypes.CHANGE_ROLE; // Chat Actions
|
|
4
5
|
|
|
5
|
-
export const SOFT_ADD_CIRCLE_CHAT =
|
|
6
|
-
export const RECEIVED_CIRCLE_MESSAGES =
|
|
7
|
-
export const START_FETCHING_CIRCLE_CHATS =
|
|
8
|
-
export const RECEIVED_CIRCLE_CHATS =
|
|
9
|
-
export const CREATED_CIRCLE_CHAT =
|
|
10
|
-
export const DELETED_CIRCLE_CHAT =
|
|
11
|
-
export const DISCONNECTED_CIRCLE_CHAT =
|
|
12
|
-
export const DISCONNECTED_CIRCLE_CHAT_LIST =
|
|
13
|
-
export const BLOCKED_CIRCLE_USER =
|
|
14
|
-
export const RECEIVED_BLOCKED_CIRCLE_USERS =
|
|
6
|
+
export const SOFT_ADD_CIRCLE_CHAT = `SOFT_ADD_${values.actionCircleKey}_CHAT`;
|
|
7
|
+
export const RECEIVED_CIRCLE_MESSAGES = `RECEIVED_${values.actionCircleKey}_MESSAGES`;
|
|
8
|
+
export const START_FETCHING_CIRCLE_CHATS = `START_FETCHING_${values.actionCircleKey}_CHATS`;
|
|
9
|
+
export const RECEIVED_CIRCLE_CHATS = `RECEIVED_${values.actionCircleKey}_CHATS`;
|
|
10
|
+
export const CREATED_CIRCLE_CHAT = `CREATED_${values.actionCircleKey}_CHAT`;
|
|
11
|
+
export const DELETED_CIRCLE_CHAT = `DELETED_${values.actionCircleKey}_CHAT`;
|
|
12
|
+
export const DISCONNECTED_CIRCLE_CHAT = `DISCONNECTED_${values.actionCircleKey}_CHAT`;
|
|
13
|
+
export const DISCONNECTED_CIRCLE_CHAT_LIST = `DISCONNECTED_${values.actionCircleKey}_CHAT_LIST`;
|
|
14
|
+
export const BLOCKED_CIRCLE_USER = `BLOCKED_${values.actionCircleKey}_USER`;
|
|
15
|
+
export const RECEIVED_BLOCKED_CIRCLE_USERS = `RECEIVED_BLOCKED_${values.actionCircleKey}_USERS`; // Circle Actions
|
|
15
16
|
|
|
16
|
-
export const PUBLIC_CIRCLES_LOAD_INITIALISE =
|
|
17
|
-
export const CIRCLES_LOAD_INITIALISE =
|
|
18
|
-
export const CIRCLES_LOADED =
|
|
19
|
-
export const CREATED_CIRCLE =
|
|
20
|
-
export const CLEAR_CIRCLES =
|
|
21
|
-
export const UPDATE_CIRCLE_UNREAD =
|
|
22
|
-
export const CLEAR_SINGLE_CIRCLE_UNREAD =
|
|
23
|
-
export const CIRCLE_INVITES_LOADED =
|
|
24
|
-
export const CIRCLE_INVITES_UPDATED =
|
|
17
|
+
export const PUBLIC_CIRCLES_LOAD_INITIALISE = `PUBLIC_${values.actionCircleKey}S_LOAD_INITIALISE`;
|
|
18
|
+
export const CIRCLES_LOAD_INITIALISE = `${values.actionCircleKey}S_LOAD_INITIALISE`;
|
|
19
|
+
export const CIRCLES_LOADED = `${values.actionCircleKey}S_LOADED`;
|
|
20
|
+
export const CREATED_CIRCLE = `CREATED_${values.actionCircleKey}`;
|
|
21
|
+
export const CLEAR_CIRCLES = `CLEAR_${values.actionCircleKey}S`;
|
|
22
|
+
export const UPDATE_CIRCLE_UNREAD = `UPDATE_${values.actionCircleKey}_UNREAD`;
|
|
23
|
+
export const CLEAR_SINGLE_CIRCLE_UNREAD = `CLEAR_SINGLE_${values.actionCircleKey}_UNREAD`;
|
|
24
|
+
export const CIRCLE_INVITES_LOADED = `${values.actionCircleKey}_INVITES_LOADED`;
|
|
25
|
+
export const CIRCLE_INVITES_UPDATED = `${values.actionCircleKey}_INVITES_UPDATED`;
|
|
25
26
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["values","ActionTypes","LOGOUT","CHANGE_ROLE","SOFT_ADD_CIRCLE_CHAT","actionCircleKey","RECEIVED_CIRCLE_MESSAGES","START_FETCHING_CIRCLE_CHATS","RECEIVED_CIRCLE_CHATS","CREATED_CIRCLE_CHAT","DELETED_CIRCLE_CHAT","DISCONNECTED_CIRCLE_CHAT","DISCONNECTED_CIRCLE_CHAT_LIST","BLOCKED_CIRCLE_USER","RECEIVED_BLOCKED_CIRCLE_USERS","PUBLIC_CIRCLES_LOAD_INITIALISE","CIRCLES_LOAD_INITIALISE","CIRCLES_LOADED","CREATED_CIRCLE","CLEAR_CIRCLES","UPDATE_CIRCLE_UNREAD","CLEAR_SINGLE_CIRCLE_UNREAD","CIRCLE_INVITES_LOADED","CIRCLE_INVITES_UPDATED"],"sources":["types.js"],"sourcesContent":["import { values } from '../values.config';\nimport { ActionTypes } from '../core.config';\n\nexport const LOGOUT = ActionTypes.LOGOUT;\nexport const CHANGE_ROLE = ActionTypes.CHANGE_ROLE;\n\n// Chat Actions\nexport const SOFT_ADD_CIRCLE_CHAT = `SOFT_ADD_${values.actionCircleKey}_CHAT`;\nexport const RECEIVED_CIRCLE_MESSAGES = `RECEIVED_${values.actionCircleKey}_MESSAGES`;\nexport const START_FETCHING_CIRCLE_CHATS = `START_FETCHING_${values.actionCircleKey}_CHATS`;\nexport const RECEIVED_CIRCLE_CHATS = `RECEIVED_${values.actionCircleKey}_CHATS`;\nexport const CREATED_CIRCLE_CHAT = `CREATED_${values.actionCircleKey}_CHAT`;\nexport const DELETED_CIRCLE_CHAT = `DELETED_${values.actionCircleKey}_CHAT`;\nexport const DISCONNECTED_CIRCLE_CHAT = `DISCONNECTED_${values.actionCircleKey}_CHAT`;\nexport const DISCONNECTED_CIRCLE_CHAT_LIST = `DISCONNECTED_${values.actionCircleKey}_CHAT_LIST`;\nexport const BLOCKED_CIRCLE_USER = `BLOCKED_${values.actionCircleKey}_USER`;\nexport const RECEIVED_BLOCKED_CIRCLE_USERS = `RECEIVED_BLOCKED_${values.actionCircleKey}_USERS`;\n\n// Circle Actions\nexport const PUBLIC_CIRCLES_LOAD_INITIALISE = `PUBLIC_${values.actionCircleKey}S_LOAD_INITIALISE`;\nexport const CIRCLES_LOAD_INITIALISE = `${values.actionCircleKey}S_LOAD_INITIALISE`;\nexport const CIRCLES_LOADED = `${values.actionCircleKey}S_LOADED`;\nexport const CREATED_CIRCLE = `CREATED_${values.actionCircleKey}`;\nexport const CLEAR_CIRCLES = `CLEAR_${values.actionCircleKey}S`;\nexport const UPDATE_CIRCLE_UNREAD = `UPDATE_${values.actionCircleKey}_UNREAD`;\nexport const CLEAR_SINGLE_CIRCLE_UNREAD = `CLEAR_SINGLE_${values.actionCircleKey}_UNREAD`;\n\nexport const CIRCLE_INVITES_LOADED = `${values.actionCircleKey}_INVITES_LOADED`;\nexport const CIRCLE_INVITES_UPDATED = `${values.actionCircleKey}_INVITES_UPDATED`;\n"],"mappings":"AAAA,SAASA,MAAT,QAAuB,kBAAvB;AACA,SAASC,WAAT,QAA4B,gBAA5B;AAEA,OAAO,MAAMC,MAAM,GAAGD,WAAW,CAACC,MAA3B;AACP,OAAO,MAAMC,WAAW,GAAGF,WAAW,CAACE,WAAhC,C,CAEP;;AACA,OAAO,MAAMC,oBAAoB,GAAI,YAAWJ,MAAM,CAACK,eAAgB,OAAhE;AACP,OAAO,MAAMC,wBAAwB,GAAI,YAAWN,MAAM,CAACK,eAAgB,WAApE;AACP,OAAO,MAAME,2BAA2B,GAAI,kBAAiBP,MAAM,CAACK,eAAgB,QAA7E;AACP,OAAO,MAAMG,qBAAqB,GAAI,YAAWR,MAAM,CAACK,eAAgB,QAAjE;AACP,OAAO,MAAMI,mBAAmB,GAAI,WAAUT,MAAM,CAACK,eAAgB,OAA9D;AACP,OAAO,MAAMK,mBAAmB,GAAI,WAAUV,MAAM,CAACK,eAAgB,OAA9D;AACP,OAAO,MAAMM,wBAAwB,GAAI,gBAAeX,MAAM,CAACK,eAAgB,OAAxE;AACP,OAAO,MAAMO,6BAA6B,GAAI,gBAAeZ,MAAM,CAACK,eAAgB,YAA7E;AACP,OAAO,MAAMQ,mBAAmB,GAAI,WAAUb,MAAM,CAACK,eAAgB,OAA9D;AACP,OAAO,MAAMS,6BAA6B,GAAI,oBAAmBd,MAAM,CAACK,eAAgB,QAAjF,C,CAEP;;AACA,OAAO,MAAMU,8BAA8B,GAAI,UAASf,MAAM,CAACK,eAAgB,mBAAxE;AACP,OAAO,MAAMW,uBAAuB,GAAI,GAAEhB,MAAM,CAACK,eAAgB,mBAA1D;AACP,OAAO,MAAMY,cAAc,GAAI,GAAEjB,MAAM,CAACK,eAAgB,UAAjD;AACP,OAAO,MAAMa,cAAc,GAAI,WAAUlB,MAAM,CAACK,eAAgB,EAAzD;AACP,OAAO,MAAMc,aAAa,GAAI,SAAQnB,MAAM,CAACK,eAAgB,GAAtD;AACP,OAAO,MAAMe,oBAAoB,GAAI,UAASpB,MAAM,CAACK,eAAgB,SAA9D;AACP,OAAO,MAAMgB,0BAA0B,GAAI,gBAAerB,MAAM,CAACK,eAAgB,SAA1E;AAEP,OAAO,MAAMiB,qBAAqB,GAAI,GAAEtB,MAAM,CAACK,eAAgB,iBAAxD;AACP,OAAO,MAAMkB,sBAAsB,GAAI,GAAEvB,MAAM,CAACK,eAAgB,kBAAzD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["Fonts","Pl60Icon"],"sources":["fonts.js"],"sourcesContent":["import { Fonts } from '../core.config';\n\nexport const Pl60Icon = Fonts.Pl60Icon;\n"],"mappings":"AAAA,SAASA,KAAT,QAAsB,gBAAtB;AAEA,OAAO,MAAMC,QAAQ,GAAGD,KAAK,CAACC,QAAvB"}
|
|
@@ -11,6 +11,7 @@ import { TEXT_DARK, TEXT_LIGHTER, StatusBarHeight, getMainBrandingColourFromStat
|
|
|
11
11
|
import NavigationService from '../../js/NavigationService';
|
|
12
12
|
import { getTinyChatDefault } from '../../config';
|
|
13
13
|
import { messageActions, circleActions } from '../../webapi';
|
|
14
|
+
import { values } from '../../values.config';
|
|
14
15
|
|
|
15
16
|
class Chat extends Component {
|
|
16
17
|
constructor(props) {
|
|
@@ -409,7 +410,7 @@ class Chat extends Component {
|
|
|
409
410
|
this.setState({
|
|
410
411
|
settingsOpen: false
|
|
411
412
|
});
|
|
412
|
-
NavigationService.navigate(
|
|
413
|
+
NavigationService.navigate(values.screenCircleDetails, {
|
|
413
414
|
group: this.state.group
|
|
414
415
|
});
|
|
415
416
|
}
|
|
@@ -418,7 +419,7 @@ class Chat extends Component {
|
|
|
418
419
|
this.setState({
|
|
419
420
|
settingsOpen: false
|
|
420
421
|
});
|
|
421
|
-
NavigationService.navigate(
|
|
422
|
+
NavigationService.navigate(values.screenEditCircle, {
|
|
422
423
|
chat: this.state.chat
|
|
423
424
|
});
|
|
424
425
|
}
|
|
@@ -454,7 +455,7 @@ class Chat extends Component {
|
|
|
454
455
|
visible: this.state.showDeleteConfirm,
|
|
455
456
|
onConfirm: this.onConfirmDelete.bind(this),
|
|
456
457
|
onCancel: this.onCancelDelete.bind(this),
|
|
457
|
-
text: `Are you sure you want to ${this.state.popUpType} this
|
|
458
|
+
text: `Are you sure you want to ${this.state.popUpType} this ${values.entityName}?`
|
|
458
459
|
});
|
|
459
460
|
}
|
|
460
461
|
|
|
@@ -477,7 +478,7 @@ class Chat extends Component {
|
|
|
477
478
|
elevation: 15
|
|
478
479
|
}
|
|
479
480
|
}, /*#__PURE__*/React.createElement(DropDownItem, {
|
|
480
|
-
text:
|
|
481
|
+
text: `View ${values.entityName}`,
|
|
481
482
|
onPress: this.goToGroupInfo.bind(this)
|
|
482
483
|
}), this.isGroupOwner(this.props.user.uid) && /*#__PURE__*/React.createElement(DropDownItem, {
|
|
483
484
|
text: 'Manage',
|
|
@@ -488,6 +489,14 @@ class Chat extends Component {
|
|
|
488
489
|
textStyle: this.state.muteSubmitting ? {
|
|
489
490
|
color: TEXT_LIGHTER
|
|
490
491
|
} : {}
|
|
492
|
+
}), !this.isGroupOwner(this.props.user.uid) && /*#__PURE__*/React.createElement(DropDownItem, {
|
|
493
|
+
last: true,
|
|
494
|
+
text: 'Leave',
|
|
495
|
+
onPress: this.onOpenDeletePrompt.bind(this, 'leave')
|
|
496
|
+
}), this.isGroupOwner(this.props.user.uid) && /*#__PURE__*/React.createElement(DropDownItem, {
|
|
497
|
+
last: true,
|
|
498
|
+
text: 'Delete',
|
|
499
|
+
onPress: this.onOpenDeletePrompt.bind(this, 'delete')
|
|
491
500
|
})), /*#__PURE__*/React.createElement(Header, {
|
|
492
501
|
leftIcon: "angle-left",
|
|
493
502
|
onPressLeft: this.onPressBack.bind(this),
|
|
@@ -576,12 +585,12 @@ const styles = {
|
|
|
576
585
|
|
|
577
586
|
const mapStateToProps = state => {
|
|
578
587
|
return {
|
|
579
|
-
reducerMessages: state.
|
|
580
|
-
chats: state.
|
|
581
|
-
chatKey: state.
|
|
582
|
-
blockedUserKeys: state.
|
|
588
|
+
reducerMessages: state[values.reducerKeyChats].messages,
|
|
589
|
+
chats: state[values.reducerKeyChats].list,
|
|
590
|
+
chatKey: state[values.reducerKeyChats].selectedChatKey,
|
|
591
|
+
blockedUserKeys: state[values.reducerKeyChats].blockedUsers,
|
|
583
592
|
user: state.user,
|
|
584
|
-
groups: state.
|
|
593
|
+
groups: state[values.reducerKey].list,
|
|
585
594
|
colourBrandingMain: getMainBrandingColourFromState(state),
|
|
586
595
|
colourBrandingLight: getLightBrandingColourFromState(state)
|
|
587
596
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Chat.js"],"names":["React","Component","View","Platform","Alert","TouchableWithoutFeedback","connect","_","moment","PlussChat","Header","ConfirmPopup","DropDownMenu","DropDownItem","getGroupInvites","updateUnreadCounter","handleGroupInvite","softLeaveGroup","deleteGroup","createChat","disconnectChat","blockUser","deleteChat","updateGroups","clearGroupCounter","updateChatMessages","TEXT_DARK","TEXT_LIGHTER","StatusBarHeight","getMainBrandingColourFromState","getLightBrandingColourFromState","NavigationService","getTinyChatDefault","messageActions","circleActions","Chat","constructor","props","state","group","isEmpty","Title","IsPrivate","otherUser","find","Audience","u","userId","user","Id","displayName","event","navigate","attachment","Type","place","back","goBack","setState","settingsOpen","alert","text","onPress","closeSettings","style","cancelable","currentUser","_id","chatUserKey","chatKey","onPressBack","_isMounted","MIN_COMPOSER_HEIGHT","select","ios","android","interval","uid","name","avatar","isUndefined","profilePic","chat","messages","keyboardOpen","newLoading","showDeleteConfirm","popUpType","muteChat","muteSubmitting","hasInvite","inviteActioned","inviteActionPopup","invitePending","componentDidMount","new","prepareChatPage","UNSAFE_componentWillReceiveProps","nextProps","prepareNewProps","componentWillUnmount","clearInterval","key","chatName","title","newGroup","forEach","groups","Muted","statee","reducerMessages","newStates","firstMessages","message","sendMessage","chats","blockedUserKeys","includes","newGrop2","muteTest","muteGroup","then","res","data","catch","err","onSend","groupLast","lastMessage","cloneDeep","GroupId","RowId","createdAt","utc","valueOf","mergeMessages","isGroupOwner","CreatorId","Creator","getChatName","userNames","without","join","getMaxTime","maxMessage","maxBy","m","fetchMessages","iteration","getMessages","setTimeout","fetchSingleMessage","timestamp","receivedMessages","newMessages","sortBy","concat","uniqBy","reverse","setInterval","regularFetch","bind","goToGroupInfo","startEdit","onOpenDeletePrompt","type","onCancelDelete","onConfirmDelete","renderConfirmPopup","render","flex","styles","container","top","right","width","zIndex","elevation","color","toggleSettings","getTitle","backgroundColor","send","fontSize","textAlign","setting","settingContainer","marginLeft","settingDropDown","height","position","paddingTop","overflow","settingDropDownOpen","dropDownOuterContainer","margin","dropDownInnerContainer","flexDirection","borderRadius","paddingBottom","paddingHorizontal","shadowColor","shadowOffset","shadowOpacity","borderWidth","borderColor","dropDownItem","alignItems","marginTop","dropDownItem_Text","fontFamily","lineHeight","mapStateToProps","circleChats","list","selectedChatKey","blockedUsers","circles","colourBrandingMain","colourBrandingLight"],"mappings":"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","sourcesContent":["import React, { Component } from 'react';\nimport { View, Platform, Alert, TouchableWithoutFeedback } from 'react-native';\nimport { connect } from 'react-redux';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport { PlussChat, Header, ConfirmPopup, DropDownMenu, DropDownItem } from '../common';\nimport {\n getGroupInvites,\n updateUnreadCounter,\n handleGroupInvite,\n softLeaveGroup,\n deleteGroup,\n createChat,\n disconnectChat,\n blockUser,\n deleteChat,\n updateGroups,\n clearGroupCounter,\n updateChatMessages,\n} from '../../actions';\nimport { TEXT_DARK, TEXT_LIGHTER, StatusBarHeight, getMainBrandingColourFromState, getLightBrandingColourFromState } from '../../js';\nimport NavigationService from '../../js/NavigationService';\nimport { getTinyChatDefault } from '../../config';\nimport { messageActions, circleActions } from '../../webapi';\n\nclass Chat extends Component {\n constructor(props) {\n super(props);\n this._isMounted = false;\n\n // used to match the constant used by gifted chat\n this.MIN_COMPOSER_HEIGHT = Platform.select({\n ios: 33,\n android: 41,\n });\n\n this.interval = null;\n\n this.state = {\n currentUser: {\n _id: this.props.user.uid,\n name: this.props.user.displayName,\n avatar:\n !_.isUndefined(this.props.user.profilePic) && !_.isEmpty(this.props.user.profilePic)\n ? this.props.user.profilePic\n : getTinyChatDefault(),\n },\n chat: {},\n group: { Title: '' },\n messages: [],\n settingsOpen: false,\n keyboardOpen: false,\n\n newLoading: false,\n showDeleteConfirm: false,\n\n popUpType: 'leave',\n\n muteChat: false,\n muteSubmitting: false,\n\n hasInvite: false,\n inviteActioned: false,\n inviteActionPopup: false,\n invitePending: false,\n };\n }\n\n componentDidMount() {\n this._isMounted = true;\n this.chatUserKey = null;\n if (this.props.new) {\n this.setState({ newLoading: true });\n }\n this.prepareChatPage();\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n // if (this.state.hasInvite && !this.state.inviteActioned) {\n // return;\n // }\n this.prepareNewProps(nextProps);\n }\n\n componentWillUnmount() {\n this._isMounted = false;\n this.setState({ inviteActionPopup: false });\n this.props.disconnectChat(this.chatKey);\n clearInterval(this.interval);\n }\n\n prepareChatPage() {\n if (this.props.chat) {\n // if (this.props.isInvite && !this.state.inviteActioned) {\n // this.setState({hasInvite:true, inviteActionPopup: true });\n // }\n // Opening existing chat\n const { chat } = this.props;\n if (!_.isUndefined(this.props.chat.key)) {\n this.chatKey = this.props.chat.key;\n } else {\n this.chatKey = this.props.chat.Id;\n }\n\n this.chatName = !_.isUndefined(chat.title) ? chat.title : chat.Title;\n let newGroup = chat;\n\n newGroup.Title = !_.isUndefined(chat.title) ? chat.title : chat.Title;\n _.forEach(this.props.groups, group => {\n if (group.Id === this.props.chat.key || group.Id === this.props.chat.Id) {\n newGroup = { ...group };\n }\n });\n let muteChat = false;\n if (!_.isUndefined(newGroup.Muted)) {\n newGroup.Muted.forEach(user => {\n if (user === this.props.user.uid) {\n muteChat = true;\n }\n });\n }\n\n const statee = { chat, group: newGroup, muteChat };\n if (this.chatKey && !_.isUndefined(this.props.reducerMessages[this.chatKey])) {\n statee.messages = this.props.reducerMessages[this.chatKey];\n }\n\n this.setState(statee);\n this.connect();\n }\n }\n\n prepareNewProps(nextProps) {\n const newStates = {};\n if (!this.chatKey && nextProps.chatKey) {\n this.chatKey = nextProps.chatKey;\n\n // If first message is provided, send message automatically\n if (this.firstMessages) {\n _.forEach(this.firstMessages, message => {\n this.sendMessage(this.props.user.uid, this.chatKey, message);\n });\n }\n this.connect();\n }\n\n _.forEach(nextProps.chats, chat => {\n if (chat.key === this.chatKey) {\n newStates.chat = { ...chat };\n }\n });\n\n // If the other user blocked current user, exit\n if (\n this.chatUserKey &&\n this.props.blockedUserKeys &&\n !_.includes(this.props.blockedUserKeys, this.chatUserKey) &&\n nextProps.blockedUserKeys &&\n _.includes(nextProps.blockedUserKeys, this.chatUserKey)\n ) {\n this.onPressBack();\n }\n if (!nextProps.new) {\n newStates.newLoading = false;\n this.setState({ newLoading: false });\n }\n let newGrop2 = this.state.group;\n _.forEach(nextProps.groups, group => {\n if (group.Id === this.chatKey) {\n newGrop2 = { ...group };\n }\n });\n newStates.muteChat = false;\n if (!_.isUndefined(newGrop2.Muted)) {\n newGrop2.Muted.forEach(user => {\n if (user === this.props.user.uid) {\n newStates.muteChat = true;\n }\n });\n }\n newStates.group = newGrop2;\n if (this._isMounted) {\n this.setState(newStates);\n }\n }\n\n getTitle = () => {\n if (!this.state.group) {\n return '';\n }\n if (_.isEmpty(this.state.group.Title) && this.state.group.IsPrivate) {\n const otherUser = _.find(this.state.group.Audience || [], u => {\n return u.userId !== this.props.user.Id;\n });\n if (otherUser) {\n return otherUser.displayName;\n }\n }\n return this.state.group.Title;\n };\n\n onPressEvent = event => {\n NavigationService.navigate('eventDetail', { event });\n };\n\n muteTest() {\n if (this.state.muteSubmitting) {\n return;\n }\n this.setState({ muteSubmitting: true });\n\n circleActions\n .muteGroup(this.state.group.Id, this.props.user.uid)\n .then(res => {\n this.setState({ muteSubmitting: false });\n this.props.updateGroups([res.data.group]);\n })\n .catch(err => {\n this.setState({ muteSubmitting: false });\n });\n }\n\n onPressAttachment = attachment => {\n switch (attachment.Type) {\n case 'Event':\n // TODO: No need to handle?\n NavigationService.navigate('eventDetail', { event: attachment });\n break;\n case 'Place':\n // TODO: No need to handle?\n NavigationService.navigate('placeDetail', { place: attachment });\n break;\n default:\n return;\n }\n };\n\n onPressBack = () => {\n if (this.props.back) {\n NavigationService.goBack(this.props.back);\n } else {\n NavigationService.goBack();\n }\n };\n\n onSend(messages = []) {\n if (this.chatKey) {\n this.sendMessage(messages[0]);\n }\n }\n\n sendMessage(message) {\n const groupLast = {\n lastMessage: _.cloneDeep(message),\n };\n\n message.GroupId = this.chatKey;\n message.RowId = `${this.chatKey}_${message._id}`;\n message.createdAt = moment.utc().valueOf();\n\n this.mergeMessages([message]);\n\n messageActions\n .sendMessage(this.props.user.uid, this.chatKey, groupLast, message)\n .then(res => {})\n .catch(err => {});\n }\n\n isGroupOwner(userId) {\n if (!_.isUndefined(this.state.group.CreatorId) && userId === this.state.group.CreatorId) {\n return true;\n }\n if (!_.isUndefined(this.state.group.Creator) && userId === this.state.group.Creator.uid) {\n return true;\n }\n return false;\n }\n\n getChatName(title, userNames) {\n if (!_.isEmpty(title)) {\n return title;\n }\n return _.without(userNames, this.state.currentUser.name).join(', ');\n }\n\n getMaxTime() {\n const maxMessage = _.maxBy(this.state.messages, m => {\n return m.createdAt;\n });\n if (maxMessage) {\n return maxMessage.createdAt;\n }\n return 0;\n }\n\n fetchMessages(iteration) {\n if (!iteration) {\n iteration = 1;\n }\n messageActions\n .getMessages(this.chatKey, 50, this.getMaxTime())\n .then(res => {\n this.mergeMessages(res.data);\n })\n .catch(err => {\n if (iteration < 20) {\n setTimeout(() => {\n this.fetchMessages(iteration + 1);\n }, 250);\n }\n });\n }\n\n fetchSingleMessage(timestamp) {\n this.props.clearGroupCounter(this.chatKey, this.props.user.uid);\n messageActions.getMessages(this.chatKey, 1, timestamp, timestamp).then(res => {\n this.mergeMessages(res.data);\n });\n }\n\n mergeMessages(receivedMessages) {\n const newMessages = _.sortBy(_.concat(this.state.messages, receivedMessages), 'createdAt');\n if (this._isMounted) {\n this.setState({\n messages: _.uniqBy(newMessages, m => {\n return m._id;\n }).reverse(),\n });\n }\n if (!_.isEmpty(receivedMessages)) {\n this.props.clearGroupCounter(this.chatKey, this.props.user.uid);\n }\n this.props.updateChatMessages(\n this.chatKey,\n _.uniqBy(newMessages, m => {\n return m._id;\n }).reverse(),\n );\n }\n\n connect() {\n if (this.chatKey) {\n this.fetchMessages();\n\n this.interval = setInterval(this.regularFetch.bind(this), 2000);\n }\n }\n\n regularFetch() {\n messageActions\n .getMessages(this.chatKey, 50, this.getMaxTime() + 1)\n .then(res => {\n if (!_.isEmpty(res.data)) {\n this.mergeMessages(res.data);\n }\n })\n .catch(err => {});\n }\n\n toggleSettings = () => {\n this.setState({ settingsOpen: !this.state.settingsOpen });\n };\n\n closeSettings = () => {\n this.setState({ settingsOpen: false });\n };\n\n confirmBlockUser = () => {\n Alert.alert(\n 'Block user',\n 'Are you sure you want to block this user? Existing chat with this user will be deleted.',\n [\n { text: 'Cancel', onPress: () => this.closeSettings(), style: 'cancel' },\n { text: 'Ok', onPress: () => this.blockUser() },\n ],\n { cancelable: false },\n );\n };\n\n blockUser = () => {\n this.closeSettings();\n // Block the user\n this.props.blockUser(this.state.currentUser._id, this.chatUserKey, this.chatKey);\n // Delete this chat\n this.props.deleteChat(this.chatKey);\n\n this.onPressBack();\n };\n\n goToGroupInfo() {\n this.setState({ settingsOpen: false });\n NavigationService.navigate('circleDetails', {\n group: this.state.group,\n });\n }\n\n startEdit() {\n this.setState({ settingsOpen: false });\n NavigationService.navigate('editCircle', {\n chat: this.state.chat,\n });\n }\n\n onOpenDeletePrompt(type) {\n this.setState({ showDeleteConfirm: true, settingsOpen: false, popUpType: type });\n }\n\n onCancelDelete() {\n this.setState({ showDeleteConfirm: false });\n }\n\n onConfirmDelete() {\n if (this.state.popUpType === 'leave') {\n this.props.softLeaveGroup(this.state.group);\n }\n if (this.state.popUpType === 'delete') {\n this.props.deleteGroup(this.state.group);\n }\n\n this.onPressBack();\n }\n\n renderConfirmPopup() {\n return (\n <ConfirmPopup\n visible={this.state.showDeleteConfirm}\n onConfirm={this.onConfirmDelete.bind(this)}\n onCancel={this.onCancelDelete.bind(this)}\n text={`Are you sure you want to ${this.state.popUpType} this circle?`}\n />\n );\n }\n\n render() {\n return (\n <TouchableWithoutFeedback onPress={this.closeSettings} style={{ flex: 1 }} disabled={!this.state.settingsOpen}>\n <View style={styles.container}>\n <DropDownMenu\n visible={this.state.settingsOpen}\n style={{ top: StatusBarHeight(50), right: 16, width: 150, zIndex: 300, elevation: 15 }}\n >\n <DropDownItem text={'View circle'} onPress={this.goToGroupInfo.bind(this)} />\n {this.isGroupOwner(this.props.user.uid) && <DropDownItem text={'Manage'} onPress={this.startEdit.bind(this)} />}\n <DropDownItem\n text={this.state.muteSubmitting ? 'Updating...' : this.state.muteChat ? 'Unmute' : 'Mute'}\n onPress={this.muteTest.bind(this)}\n textStyle={this.state.muteSubmitting ? { color: TEXT_LIGHTER } : {}}\n />\n {/* {!this.isGroupOwner(this.props.user.uid) &&\n (<DropDownItem last text={'Leave'} onPress={this.onOpenDeletePrompt.bind(this, 'leave')} />)}\n {this.isGroupOwner(this.props.user.uid) && (\n <DropDownItem last text={'Delete'} onPress={this.onOpenDeletePrompt.bind(this, 'delete')} />\n )} */}\n </DropDownMenu>\n <Header\n leftIcon=\"angle-left\"\n onPressLeft={this.onPressBack.bind(this)}\n rightIconType=\"pluss\"\n rightIcon=\"more_options\"\n onPressRight={this.toggleSettings.bind(this)}\n text={this.getTitle()}\n onTextPress={this.goToGroupInfo.bind(this)}\n />\n\n <PlussChat messages={this.chatKey ? this.state.messages : []} onSend={this.onSend.bind(this)} />\n {this.renderConfirmPopup()}\n </View>\n </TouchableWithoutFeedback>\n );\n }\n}\n\nconst styles = {\n container: {\n flex: 1,\n backgroundColor: '#fff',\n },\n send: {\n color: '#fff',\n fontSize: 15,\n width: 30,\n textAlign: 'center',\n },\n setting: {\n fontSize: 18,\n },\n settingContainer: {\n marginLeft: 20,\n },\n settingDropDown: {\n height: 0,\n width: 'auto',\n position: 'absolute',\n right: 2,\n top: 62,\n zIndex: 2,\n elevation: 2,\n paddingTop: 0,\n overflow: 'hidden',\n },\n settingDropDownOpen: {\n height: 'auto',\n },\n dropDownOuterContainer: {\n paddingTop: 9,\n overflow: 'visible',\n backgroundColor: 'transparent',\n margin: 5,\n },\n dropDownInnerContainer: {\n flexDirection: 'column',\n backgroundColor: '#fcfcfc',\n borderRadius: 3,\n paddingBottom: 10,\n paddingHorizontal: 15,\n overflow: 'visible',\n shadowColor: '#000',\n shadowOffset: { width: 1, height: 1 },\n shadowOpacity: 0.3,\n ...Platform.select({\n android: {\n borderWidth: 1,\n borderColor: 'rgba(230, 230, 230, .4)',\n },\n }),\n },\n dropDownItem: {\n flexDirection: 'row',\n alignItems: 'center',\n marginTop: 10,\n },\n dropDownItem_Text: {\n fontFamily: 'sf-regular',\n fontSize: 15,\n lineHeight: 22,\n color: TEXT_DARK,\n },\n};\n\nconst mapStateToProps = state => {\n return {\n reducerMessages: state.circleChats.messages,\n chats: state.circleChats.list,\n chatKey: state.circleChats.selectedChatKey,\n blockedUserKeys: state.circleChats.blockedUsers,\n user: state.user,\n groups: state.circles.list,\n colourBrandingMain: getMainBrandingColourFromState(state),\n colourBrandingLight: getLightBrandingColourFromState(state),\n };\n};\n\nexport default connect(mapStateToProps, {\n updateUnreadCounter,\n getGroupInvites,\n handleGroupInvite,\n updateGroups,\n softLeaveGroup,\n deleteGroup,\n createChat,\n disconnectChat,\n blockUser,\n deleteChat,\n clearGroupCounter,\n updateChatMessages,\n})(Chat);\n"]}
|
|
1
|
+
{"version":3,"names":["React","Component","View","Platform","Alert","TouchableWithoutFeedback","connect","_","moment","PlussChat","Header","ConfirmPopup","DropDownMenu","DropDownItem","getGroupInvites","updateUnreadCounter","handleGroupInvite","softLeaveGroup","deleteGroup","createChat","disconnectChat","blockUser","deleteChat","updateGroups","clearGroupCounter","updateChatMessages","TEXT_DARK","TEXT_LIGHTER","StatusBarHeight","getMainBrandingColourFromState","getLightBrandingColourFromState","NavigationService","getTinyChatDefault","messageActions","circleActions","values","Chat","constructor","props","state","group","isEmpty","Title","IsPrivate","otherUser","find","Audience","u","userId","user","Id","displayName","event","navigate","attachment","Type","place","back","goBack","setState","settingsOpen","alert","text","onPress","closeSettings","style","cancelable","currentUser","_id","chatUserKey","chatKey","onPressBack","_isMounted","MIN_COMPOSER_HEIGHT","select","ios","android","interval","uid","name","avatar","isUndefined","profilePic","chat","messages","keyboardOpen","newLoading","showDeleteConfirm","popUpType","muteChat","muteSubmitting","hasInvite","inviteActioned","inviteActionPopup","invitePending","componentDidMount","new","prepareChatPage","UNSAFE_componentWillReceiveProps","nextProps","prepareNewProps","componentWillUnmount","clearInterval","key","chatName","title","newGroup","forEach","groups","Muted","statee","reducerMessages","newStates","firstMessages","message","sendMessage","chats","blockedUserKeys","includes","newGrop2","muteTest","muteGroup","then","res","data","catch","err","onSend","groupLast","lastMessage","cloneDeep","GroupId","RowId","createdAt","utc","valueOf","mergeMessages","isGroupOwner","CreatorId","Creator","getChatName","userNames","without","join","getMaxTime","maxMessage","maxBy","m","fetchMessages","iteration","getMessages","setTimeout","fetchSingleMessage","timestamp","receivedMessages","newMessages","sortBy","concat","uniqBy","reverse","setInterval","regularFetch","bind","goToGroupInfo","screenCircleDetails","startEdit","screenEditCircle","onOpenDeletePrompt","type","onCancelDelete","onConfirmDelete","renderConfirmPopup","entityName","render","flex","styles","container","top","right","width","zIndex","elevation","color","toggleSettings","getTitle","backgroundColor","send","fontSize","textAlign","setting","settingContainer","marginLeft","settingDropDown","height","position","paddingTop","overflow","settingDropDownOpen","dropDownOuterContainer","margin","dropDownInnerContainer","flexDirection","borderRadius","paddingBottom","paddingHorizontal","shadowColor","shadowOffset","shadowOpacity","borderWidth","borderColor","dropDownItem","alignItems","marginTop","dropDownItem_Text","fontFamily","lineHeight","mapStateToProps","reducerKeyChats","list","selectedChatKey","blockedUsers","reducerKey","colourBrandingMain","colourBrandingLight"],"sources":["Chat.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View, Platform, Alert, TouchableWithoutFeedback } from 'react-native';\nimport { connect } from 'react-redux';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport { PlussChat, Header, ConfirmPopup, DropDownMenu, DropDownItem } from '../common';\nimport {\n getGroupInvites,\n updateUnreadCounter,\n handleGroupInvite,\n softLeaveGroup,\n deleteGroup,\n createChat,\n disconnectChat,\n blockUser,\n deleteChat,\n updateGroups,\n clearGroupCounter,\n updateChatMessages,\n} from '../../actions';\nimport { TEXT_DARK, TEXT_LIGHTER, StatusBarHeight, getMainBrandingColourFromState, getLightBrandingColourFromState } from '../../js';\nimport NavigationService from '../../js/NavigationService';\nimport { getTinyChatDefault } from '../../config';\nimport { messageActions, circleActions } from '../../webapi';\nimport { values } from '../../values.config';\n\nclass Chat extends Component {\n constructor(props) {\n super(props);\n this._isMounted = false;\n\n // used to match the constant used by gifted chat\n this.MIN_COMPOSER_HEIGHT = Platform.select({\n ios: 33,\n android: 41,\n });\n\n this.interval = null;\n\n this.state = {\n currentUser: {\n _id: this.props.user.uid,\n name: this.props.user.displayName,\n avatar:\n !_.isUndefined(this.props.user.profilePic) && !_.isEmpty(this.props.user.profilePic)\n ? this.props.user.profilePic\n : getTinyChatDefault(),\n },\n chat: {},\n group: { Title: '' },\n messages: [],\n settingsOpen: false,\n keyboardOpen: false,\n\n newLoading: false,\n showDeleteConfirm: false,\n\n popUpType: 'leave',\n\n muteChat: false,\n muteSubmitting: false,\n\n hasInvite: false,\n inviteActioned: false,\n inviteActionPopup: false,\n invitePending: false,\n };\n }\n\n componentDidMount() {\n this._isMounted = true;\n this.chatUserKey = null;\n if (this.props.new) {\n this.setState({ newLoading: true });\n }\n this.prepareChatPage();\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n // if (this.state.hasInvite && !this.state.inviteActioned) {\n // return;\n // }\n this.prepareNewProps(nextProps);\n }\n\n componentWillUnmount() {\n this._isMounted = false;\n this.setState({ inviteActionPopup: false });\n this.props.disconnectChat(this.chatKey);\n clearInterval(this.interval);\n }\n\n prepareChatPage() {\n if (this.props.chat) {\n // if (this.props.isInvite && !this.state.inviteActioned) {\n // this.setState({hasInvite:true, inviteActionPopup: true });\n // }\n // Opening existing chat\n const { chat } = this.props;\n if (!_.isUndefined(this.props.chat.key)) {\n this.chatKey = this.props.chat.key;\n } else {\n this.chatKey = this.props.chat.Id;\n }\n\n this.chatName = !_.isUndefined(chat.title) ? chat.title : chat.Title;\n let newGroup = chat;\n\n newGroup.Title = !_.isUndefined(chat.title) ? chat.title : chat.Title;\n _.forEach(this.props.groups, group => {\n if (group.Id === this.props.chat.key || group.Id === this.props.chat.Id) {\n newGroup = { ...group };\n }\n });\n let muteChat = false;\n if (!_.isUndefined(newGroup.Muted)) {\n newGroup.Muted.forEach(user => {\n if (user === this.props.user.uid) {\n muteChat = true;\n }\n });\n }\n\n const statee = { chat, group: newGroup, muteChat };\n if (this.chatKey && !_.isUndefined(this.props.reducerMessages[this.chatKey])) {\n statee.messages = this.props.reducerMessages[this.chatKey];\n }\n\n this.setState(statee);\n this.connect();\n }\n }\n\n prepareNewProps(nextProps) {\n const newStates = {};\n if (!this.chatKey && nextProps.chatKey) {\n this.chatKey = nextProps.chatKey;\n\n // If first message is provided, send message automatically\n if (this.firstMessages) {\n _.forEach(this.firstMessages, message => {\n this.sendMessage(this.props.user.uid, this.chatKey, message);\n });\n }\n this.connect();\n }\n\n _.forEach(nextProps.chats, chat => {\n if (chat.key === this.chatKey) {\n newStates.chat = { ...chat };\n }\n });\n\n // If the other user blocked current user, exit\n if (\n this.chatUserKey &&\n this.props.blockedUserKeys &&\n !_.includes(this.props.blockedUserKeys, this.chatUserKey) &&\n nextProps.blockedUserKeys &&\n _.includes(nextProps.blockedUserKeys, this.chatUserKey)\n ) {\n this.onPressBack();\n }\n if (!nextProps.new) {\n newStates.newLoading = false;\n this.setState({ newLoading: false });\n }\n let newGrop2 = this.state.group;\n _.forEach(nextProps.groups, group => {\n if (group.Id === this.chatKey) {\n newGrop2 = { ...group };\n }\n });\n newStates.muteChat = false;\n if (!_.isUndefined(newGrop2.Muted)) {\n newGrop2.Muted.forEach(user => {\n if (user === this.props.user.uid) {\n newStates.muteChat = true;\n }\n });\n }\n newStates.group = newGrop2;\n if (this._isMounted) {\n this.setState(newStates);\n }\n }\n\n getTitle = () => {\n if (!this.state.group) {\n return '';\n }\n if (_.isEmpty(this.state.group.Title) && this.state.group.IsPrivate) {\n const otherUser = _.find(this.state.group.Audience || [], u => {\n return u.userId !== this.props.user.Id;\n });\n if (otherUser) {\n return otherUser.displayName;\n }\n }\n return this.state.group.Title;\n };\n\n onPressEvent = event => {\n NavigationService.navigate('eventDetail', { event });\n };\n\n muteTest() {\n if (this.state.muteSubmitting) {\n return;\n }\n this.setState({ muteSubmitting: true });\n\n circleActions\n .muteGroup(this.state.group.Id, this.props.user.uid)\n .then(res => {\n this.setState({ muteSubmitting: false });\n this.props.updateGroups([res.data.group]);\n })\n .catch(err => {\n this.setState({ muteSubmitting: false });\n });\n }\n\n onPressAttachment = attachment => {\n switch (attachment.Type) {\n case 'Event':\n // TODO: No need to handle?\n NavigationService.navigate('eventDetail', { event: attachment });\n break;\n case 'Place':\n // TODO: No need to handle?\n NavigationService.navigate('placeDetail', { place: attachment });\n break;\n default:\n return;\n }\n };\n\n onPressBack = () => {\n if (this.props.back) {\n NavigationService.goBack(this.props.back);\n } else {\n NavigationService.goBack();\n }\n };\n\n onSend(messages = []) {\n if (this.chatKey) {\n this.sendMessage(messages[0]);\n }\n }\n\n sendMessage(message) {\n const groupLast = {\n lastMessage: _.cloneDeep(message),\n };\n\n message.GroupId = this.chatKey;\n message.RowId = `${this.chatKey}_${message._id}`;\n message.createdAt = moment.utc().valueOf();\n\n this.mergeMessages([message]);\n\n messageActions\n .sendMessage(this.props.user.uid, this.chatKey, groupLast, message)\n .then(res => {})\n .catch(err => {});\n }\n\n isGroupOwner(userId) {\n if (!_.isUndefined(this.state.group.CreatorId) && userId === this.state.group.CreatorId) {\n return true;\n }\n if (!_.isUndefined(this.state.group.Creator) && userId === this.state.group.Creator.uid) {\n return true;\n }\n return false;\n }\n\n getChatName(title, userNames) {\n if (!_.isEmpty(title)) {\n return title;\n }\n return _.without(userNames, this.state.currentUser.name).join(', ');\n }\n\n getMaxTime() {\n const maxMessage = _.maxBy(this.state.messages, m => {\n return m.createdAt;\n });\n if (maxMessage) {\n return maxMessage.createdAt;\n }\n return 0;\n }\n\n fetchMessages(iteration) {\n if (!iteration) {\n iteration = 1;\n }\n messageActions\n .getMessages(this.chatKey, 50, this.getMaxTime())\n .then(res => {\n this.mergeMessages(res.data);\n })\n .catch(err => {\n if (iteration < 20) {\n setTimeout(() => {\n this.fetchMessages(iteration + 1);\n }, 250);\n }\n });\n }\n\n fetchSingleMessage(timestamp) {\n this.props.clearGroupCounter(this.chatKey, this.props.user.uid);\n messageActions.getMessages(this.chatKey, 1, timestamp, timestamp).then(res => {\n this.mergeMessages(res.data);\n });\n }\n\n mergeMessages(receivedMessages) {\n const newMessages = _.sortBy(_.concat(this.state.messages, receivedMessages), 'createdAt');\n if (this._isMounted) {\n this.setState({\n messages: _.uniqBy(newMessages, m => {\n return m._id;\n }).reverse(),\n });\n }\n if (!_.isEmpty(receivedMessages)) {\n this.props.clearGroupCounter(this.chatKey, this.props.user.uid);\n }\n this.props.updateChatMessages(\n this.chatKey,\n _.uniqBy(newMessages, m => {\n return m._id;\n }).reverse(),\n );\n }\n\n connect() {\n if (this.chatKey) {\n this.fetchMessages();\n\n this.interval = setInterval(this.regularFetch.bind(this), 2000);\n }\n }\n\n regularFetch() {\n messageActions\n .getMessages(this.chatKey, 50, this.getMaxTime() + 1)\n .then(res => {\n if (!_.isEmpty(res.data)) {\n this.mergeMessages(res.data);\n }\n })\n .catch(err => {});\n }\n\n toggleSettings = () => {\n this.setState({ settingsOpen: !this.state.settingsOpen });\n };\n\n closeSettings = () => {\n this.setState({ settingsOpen: false });\n };\n\n confirmBlockUser = () => {\n Alert.alert(\n 'Block user',\n 'Are you sure you want to block this user? Existing chat with this user will be deleted.',\n [\n { text: 'Cancel', onPress: () => this.closeSettings(), style: 'cancel' },\n { text: 'Ok', onPress: () => this.blockUser() },\n ],\n { cancelable: false },\n );\n };\n\n blockUser = () => {\n this.closeSettings();\n // Block the user\n this.props.blockUser(this.state.currentUser._id, this.chatUserKey, this.chatKey);\n // Delete this chat\n this.props.deleteChat(this.chatKey);\n\n this.onPressBack();\n };\n\n goToGroupInfo() {\n this.setState({ settingsOpen: false });\n NavigationService.navigate(values.screenCircleDetails, {\n group: this.state.group,\n });\n }\n\n startEdit() {\n this.setState({ settingsOpen: false });\n NavigationService.navigate(values.screenEditCircle, {\n chat: this.state.chat,\n });\n }\n\n onOpenDeletePrompt(type) {\n this.setState({ showDeleteConfirm: true, settingsOpen: false, popUpType: type });\n }\n\n onCancelDelete() {\n this.setState({ showDeleteConfirm: false });\n }\n\n onConfirmDelete() {\n if (this.state.popUpType === 'leave') {\n this.props.softLeaveGroup(this.state.group);\n }\n if (this.state.popUpType === 'delete') {\n this.props.deleteGroup(this.state.group);\n }\n\n this.onPressBack();\n }\n\n renderConfirmPopup() {\n return (\n <ConfirmPopup\n visible={this.state.showDeleteConfirm}\n onConfirm={this.onConfirmDelete.bind(this)}\n onCancel={this.onCancelDelete.bind(this)}\n text={`Are you sure you want to ${this.state.popUpType} this ${values.entityName}?`}\n />\n );\n }\n\n render() {\n return (\n <TouchableWithoutFeedback onPress={this.closeSettings} style={{ flex: 1 }} disabled={!this.state.settingsOpen}>\n <View style={styles.container}>\n <DropDownMenu\n visible={this.state.settingsOpen}\n style={{ top: StatusBarHeight(50), right: 16, width: 150, zIndex: 300, elevation: 15 }}\n >\n <DropDownItem text={`View ${values.entityName}`} onPress={this.goToGroupInfo.bind(this)} />\n {this.isGroupOwner(this.props.user.uid) && <DropDownItem text={'Manage'} onPress={this.startEdit.bind(this)} />}\n <DropDownItem\n text={this.state.muteSubmitting ? 'Updating...' : this.state.muteChat ? 'Unmute' : 'Mute'}\n onPress={this.muteTest.bind(this)}\n textStyle={this.state.muteSubmitting ? { color: TEXT_LIGHTER } : {}}\n />\n {!this.isGroupOwner(this.props.user.uid) && (\n <DropDownItem last text={'Leave'} onPress={this.onOpenDeletePrompt.bind(this, 'leave')} />\n )}\n {this.isGroupOwner(this.props.user.uid) && (\n <DropDownItem last text={'Delete'} onPress={this.onOpenDeletePrompt.bind(this, 'delete')} />\n )}\n </DropDownMenu>\n <Header\n leftIcon=\"angle-left\"\n onPressLeft={this.onPressBack.bind(this)}\n rightIconType=\"pluss\"\n rightIcon=\"more_options\"\n onPressRight={this.toggleSettings.bind(this)}\n text={this.getTitle()}\n onTextPress={this.goToGroupInfo.bind(this)}\n />\n\n <PlussChat messages={this.chatKey ? this.state.messages : []} onSend={this.onSend.bind(this)} />\n {this.renderConfirmPopup()}\n </View>\n </TouchableWithoutFeedback>\n );\n }\n}\n\nconst styles = {\n container: {\n flex: 1,\n backgroundColor: '#fff',\n },\n send: {\n color: '#fff',\n fontSize: 15,\n width: 30,\n textAlign: 'center',\n },\n setting: {\n fontSize: 18,\n },\n settingContainer: {\n marginLeft: 20,\n },\n settingDropDown: {\n height: 0,\n width: 'auto',\n position: 'absolute',\n right: 2,\n top: 62,\n zIndex: 2,\n elevation: 2,\n paddingTop: 0,\n overflow: 'hidden',\n },\n settingDropDownOpen: {\n height: 'auto',\n },\n dropDownOuterContainer: {\n paddingTop: 9,\n overflow: 'visible',\n backgroundColor: 'transparent',\n margin: 5,\n },\n dropDownInnerContainer: {\n flexDirection: 'column',\n backgroundColor: '#fcfcfc',\n borderRadius: 3,\n paddingBottom: 10,\n paddingHorizontal: 15,\n overflow: 'visible',\n shadowColor: '#000',\n shadowOffset: { width: 1, height: 1 },\n shadowOpacity: 0.3,\n ...Platform.select({\n android: {\n borderWidth: 1,\n borderColor: 'rgba(230, 230, 230, .4)',\n },\n }),\n },\n dropDownItem: {\n flexDirection: 'row',\n alignItems: 'center',\n marginTop: 10,\n },\n dropDownItem_Text: {\n fontFamily: 'sf-regular',\n fontSize: 15,\n lineHeight: 22,\n color: TEXT_DARK,\n },\n};\n\nconst mapStateToProps = state => {\n return {\n reducerMessages: state[values.reducerKeyChats].messages,\n chats: state[values.reducerKeyChats].list,\n chatKey: state[values.reducerKeyChats].selectedChatKey,\n blockedUserKeys: state[values.reducerKeyChats].blockedUsers,\n user: state.user,\n groups: state[values.reducerKey].list,\n colourBrandingMain: getMainBrandingColourFromState(state),\n colourBrandingLight: getLightBrandingColourFromState(state),\n };\n};\n\nexport default connect(mapStateToProps, {\n updateUnreadCounter,\n getGroupInvites,\n handleGroupInvite,\n updateGroups,\n softLeaveGroup,\n deleteGroup,\n createChat,\n disconnectChat,\n blockUser,\n deleteChat,\n clearGroupCounter,\n updateChatMessages,\n})(Chat);\n"],"mappings":"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"}
|