@plusscommunities/pluss-circles-app-groups 6.0.13 → 6.0.15

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.
@@ -322,12 +322,12 @@ const mapStateToProps = state => {
322
322
  const others = [];
323
323
  const circles = state[values.reducerKey];
324
324
  if (state.user.uid != null) {
325
- circles.list.forEach(element => {
325
+ (circles.list || []).forEach(element => {
326
326
  if (!_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[state.user.uid]) && element.Unread[state.user.uid] > 0) {
327
327
  groupUnread += 1;
328
328
  }
329
329
  });
330
- circles.privateList.forEach(element => {
330
+ (circles.privateList || []).forEach(element => {
331
331
  if (!!element.PrivateChatUser && !_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[state.user.uid]) && element.Unread[state.user.uid] > 0) {
332
332
  peopleUnread += 1;
333
333
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","View","connect","withNavigationFocus","_","moment","Header","TouchableSearchBar","CategoryTabs","LoadingIndicator","getSite","NavigationService","ChatList","getGroupInvites","updatePublicGroups","updateGroups","updateUnreadCounter","clearGroupCounter","residentsLoaded","getFollowers","linkedUsersLoaded","linkedToUsersLoaded","circleActions","contactActions","userActions","TakeoverBackground","ContactsList","BaseComponents","values","PeoplePage","constructor","props","_defineProperty","user","uid","res","getGroups","data","Items","error","console","log","goBack","groupFetchInterval","state","selectedCategory","onlyGroups","textFeatureTitle","nextGroupsFetch","nextPeopleFetch","fetchingPublicGroups","fetchingResidents","fetchingLinkedUsers","fetchingLinkedToMe","isHomeTab","categories","categoryCounter","Circles","Contacts","componentDidMount","setState","getParentRoute","tab","setTimeout","getUserGroups","fetchUsers","getPublicGroups","setInterval","bind","updateLastFetch","UNSAFE_componentWillReceiveProps","nextProps","checkFocusRefresh","isFocused","componentWillUnmount","clearInterval","newFocus","utc","valueOf","updateBoth","add","site","category","getSiteResidents","isEmpty","results","sortBy","getLinkedUsers","getLinkedToMe","selectCategory","renderCategories","onlyPeople","createElement","categoryKeys","counterValues","groupUnread","peopleUnread","initialCategory","currentTab","onSelect","noScroll","catStyle","paddingHorizontal","renderHeader","leftIcon","onPressLeft","onPressBack","text","title","tabTitle","extraHeaderContent","centerContent","searchName","featureKey","priorityType","style","includes","hidden","marginRight","rightContent","NotificationBell","goToNotifs","renderPage","loading","content","publicGroups","isLoading","options","source","users","otherMessages","flex","visible","render","takeover","userTakeover","mapStateToProps","residents","list","unionBy","linkedList","linkedToList","others","circles","reducerKey","forEach","element","isUndefined","Unread","privateList","PrivateChatUser","lastMessage","find","id","userId","_element$lastMessage","_element$lastMessage2","lastMessageAt","createdAt","unread","_element$lastMessage3","_element$lastMessage4","displayName","key","profilePic","profilePicThumb","section","push","filter","publicList","group","some","Audience","u","following","followers"],"sources":["PeoplePage.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View } from 'react-native';\nimport { connect } from 'react-redux';\nimport { withNavigationFocus } from 'react-navigation';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport { Header, TouchableSearchBar, CategoryTabs, LoadingIndicator } from '../common';\nimport { getSite } from '../../js';\nimport NavigationService from '../../js/NavigationService';\nimport ChatList from './ChatList';\nimport {\n getGroupInvites,\n updatePublicGroups,\n updateGroups,\n updateUnreadCounter,\n clearGroupCounter,\n residentsLoaded,\n getFollowers,\n linkedUsersLoaded,\n linkedToUsersLoaded,\n} from '../../actions';\nimport { circleActions, contactActions, userActions } from '../../webapi';\nimport TakeoverBackground from '../takeover/TakeoverBackground';\nimport ContactsList from './ContactsList';\nimport { BaseComponents } from '../../feature.config';\nimport { values } from '../../values.config';\n\nclass PeoplePage extends Component {\n constructor(props) {\n super(props);\n this.groupFetchInterval = null;\n this.state = {\n selectedCategory: this.props.onlyGroups ? values.textFeatureTitle : 'Contacts',\n nextGroupsFetch: 0,\n nextPeopleFetch: 0,\n fetchingPublicGroups: true,\n fetchingResidents: true,\n fetchingLinkedUsers: true,\n fetchingLinkedToMe: true,\n isHomeTab: false,\n };\n this.categories = ['Contacts', values.textFeatureTitle];\n this.categoryCounter = { Circles: true, Contacts: true };\n }\n\n async componentDidMount() {\n this.setState({ isHomeTab: !NavigationService.getParentRoute() });\n\n if (this.props.tab) {\n this.setState({ selectedCategory: this.props.tab });\n }\n\n setTimeout(() => {\n this.getGroupInvites();\n }, 100);\n setTimeout(() => {\n this.getUserGroups();\n }, 200);\n setTimeout(() => {\n this.props.getFollowers(this.props.user.uid);\n }, 300);\n setTimeout(() => {\n this.fetchUsers();\n }, 2000);\n setTimeout(() => {\n this.getPublicGroups();\n }, 2500);\n\n this.groupFetchInterval = setInterval(this.getUserGroups.bind(this), 2000);\n\n this.updateLastFetch(true);\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.tab && nextProps.tab !== this.props.tab) {\n this.setState({ selectedCategory: nextProps.tab });\n }\n\n this.checkFocusRefresh(nextProps.isFocused);\n }\n\n componentWillUnmount() {\n clearInterval(this.groupFetchInterval);\n }\n\n checkFocusRefresh(newFocus) {\n if (newFocus && !this.props.isFocused) {\n setTimeout(() => {\n if (this.state.selectedCategory === values.textFeatureTitle && this.state.nextGroupsFetch < moment.utc().valueOf()) {\n this.getGroupInvites();\n this.getPublicGroups();\n this.updateLastFetch(false, true);\n }\n if (this.state.selectedCategory !== values.textFeatureTitle && this.state.nextPeopleFetch < moment.utc().valueOf()) {\n this.fetchUsers();\n this.props.getFollowers(this.props.user.uid);\n this.updateLastFetch(false, false);\n }\n this.getUserGroups();\n setTimeout(() => {\n this.getUserGroups();\n }, 5000);\n }, 1000);\n }\n }\n\n updateLastFetch(updateBoth, updateGroups) {\n const nextGroupsFetch = moment.utc();\n const nextPeopleFetch = moment.utc();\n nextGroupsFetch.add(2, 'seconds');\n nextPeopleFetch.add(5, 'minutes');\n\n if (updateBoth) {\n this.setState({\n nextGroupsFetch: nextGroupsFetch.valueOf(),\n nextPeopleFetch: nextPeopleFetch.valueOf(),\n });\n } else {\n if (updateGroups) {\n this.setState({\n nextGroupsFetch: nextGroupsFetch.valueOf(),\n });\n } else {\n this.setState({\n nextPeopleFetch: nextPeopleFetch.valueOf(),\n });\n }\n }\n }\n\n /***\n * Circles/Chat page functions\n */\n getGroupInvites = () => {\n this.props.getGroupInvites(this.props.user.uid);\n };\n\n getPublicGroups() {\n this.setState({ fetchingPublicGroups: true }, async () => {\n try {\n const res = await circleActions.getPublicGroups(getSite(this.props.user.site));\n // console.log('getPublicGroups', res.data);\n this.props.updatePublicGroups(res.data);\n } catch (error) {\n console.log('fetch public circles FAIL', error);\n } finally {\n this.setState({ fetchingPublicGroups: false });\n }\n });\n }\n\n getUserGroups = async () => {\n try {\n // Always exclude archived groups (false parameter)\n const res = await circleActions.getGroups(false);\n this.props.updateGroups(res.data.Items);\n this.props.updateUnreadCounter(res.data.Items, this.props.user.uid);\n } catch (error) {\n console.log('fetch circles FAIL', error);\n }\n };\n\n /***\n * Contacts page refetch\n */\n fetchUsers() {\n if (this.props.user.category !== 'family') {\n this.setState({ fetchingResidents: true }, async () => {\n try {\n const res = await contactActions.getSiteResidents(getSite(this.props.user.site));\n // console.log('getSiteResidents', res.data);\n if (!_.isEmpty(res.data.results.Items)) {\n this.props.residentsLoaded(_.sortBy(res.data.results.Items, 'displayName'));\n }\n } catch (error) {\n console.log('fetch site residents FAIL', error);\n } finally {\n this.setState({ fetchingResidents: false });\n }\n });\n } else {\n this.setState({ fetchingResidents: false });\n }\n\n this.setState({ fetchingLinkedUsers: true }, async () => {\n try {\n const res = await userActions.getLinkedUsers(this.props.user.uid);\n // console.log('getLinkedUsers', res.data);\n if (!_.isEmpty(res.data)) {\n this.props.linkedToUsersLoaded(_.sortBy(res.data, 'displayName'));\n }\n } catch (error) {\n console.log('fetch linked users FAIL', error);\n } finally {\n this.setState({ fetchingLinkedUsers: false });\n }\n });\n\n this.setState({ fetchingLinkedToMe: true }, async () => {\n try {\n const res = await userActions.getLinkedToMe(this.props.user.uid);\n // console.log('getLinkedToMe', res.data);\n if (!_.isEmpty(res.data)) {\n this.props.linkedUsersLoaded(_.sortBy(res.data.Items, 'displayName'));\n }\n } catch (error) {\n console.log('fetch linked to me FAIL', error);\n } finally {\n this.setState({ fetchingLinkedToMe: false });\n }\n });\n }\n\n selectCategory(category) {\n this.setState({\n selectedCategory: category,\n });\n if (category === values.textFeatureTitle && this.state.nextGroupsFetch < moment.utc().valueOf()) {\n this.getGroupInvites();\n this.getUserGroups();\n this.getPublicGroups();\n this.updateLastFetch(false, true);\n }\n if (category !== values.textFeatureTitle && this.state.nextPeopleFetch < moment.utc().valueOf()) {\n this.fetchUsers();\n this.props.getFollowers(this.props.user.uid);\n this.updateLastFetch(false, false);\n }\n }\n\n onPressBack = () => {\n NavigationService.goBack();\n };\n\n renderCategories() {\n if (this.props.onlyGroups || this.props.onlyPeople) {\n return null;\n }\n return (\n <CategoryTabs\n categoryKeys={this.categories}\n categoryCounter={this.categoryCounter}\n counterValues={{ Circles: this.props.groupUnread, Contacts: this.props.peopleUnread }}\n initialCategory={'Contacts'}\n currentTab={this.state.selectedCategory}\n onSelect={this.selectCategory.bind(this)}\n noScroll\n catStyle={{ paddingHorizontal: 16 }}\n />\n );\n }\n\n renderHeader() {\n if (!this.state.isHomeTab)\n return (\n <Header\n leftIcon=\"angle-left\"\n onPressLeft={this.onPressBack}\n text={this.props.title || this.props.tabTitle || 'People'}\n extraHeaderContent={this.renderCategories()}\n />\n );\n\n return (\n <Header\n centerContent={\n <TouchableSearchBar\n searchName={this.state.selectedCategory === values.textFeatureTitle ? values.featureKey : 'people'}\n priorityType={this.state.selectedCategory === values.textFeatureTitle ? values.featureKey : 'users'}\n style={_.includes(this.props.user.hidden, 'notifications') ? null : { marginRight: 0 }}\n />\n }\n rightContent={\n _.includes(this.props.user.hidden, 'notifications') ? null : (\n <BaseComponents.NotificationBell\n goToNotifs={() => {\n this.goToNotifs.bind(this);\n }}\n />\n )\n }\n extraHeaderContent={this.renderCategories()}\n />\n );\n }\n\n renderPage() {\n let loading = false;\n const content = (() => {\n // console.log('renderPage', this.state.selectedCategory);\n switch (this.state.selectedCategory) {\n case values.textFeatureTitle:\n loading = this.state.fetchingPublicGroups;\n return <ChatList publicGroups={this.props.publicGroups} isLoading={loading} options={this.props.options} />;\n case 'Contacts':\n loading = this.state.fetchingResidents || this.state.fetchingLinkedUsers || this.state.fetchingLinkedToMe;\n return (\n <ContactsList\n source={this.props.users}\n otherMessages={this.props.otherMessages}\n isLoading={loading}\n options={this.props.options}\n />\n );\n default:\n break;\n }\n return null;\n })();\n\n return (\n <View style={{ flex: 1 }}>\n <LoadingIndicator visible={loading} />\n {content}\n </View>\n );\n }\n\n render() {\n return (\n <TakeoverBackground takeover={this.props.userTakeover}>\n {this.renderHeader()}\n {this.renderPage()}\n </TakeoverBackground>\n );\n }\n}\n\nconst mapStateToProps = state => {\n // console.log('mapStateToProps circles', state.circles);\n const residents = state.user.category !== 'family' ? state.residents.list : [];\n let users = _.unionBy([...state.residents.linkedList, ...state.residents.linkedToList, ...residents], 'id');\n let groupUnread = 0;\n let peopleUnread = 0;\n const others = [];\n const circles = state[values.reducerKey];\n if (state.user.uid != null) {\n circles.list.forEach(element => {\n if (\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[state.user.uid]) &&\n element.Unread[state.user.uid] > 0\n ) {\n groupUnread += 1;\n }\n });\n circles.privateList.forEach(element => {\n if (\n !!element.PrivateChatUser &&\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[state.user.uid]) &&\n element.Unread[state.user.uid] > 0\n ) {\n peopleUnread += 1;\n }\n if (!!element.lastMessage && !!element.PrivateChatUser) {\n const user = _.find(users, { id: element.PrivateChatUser.userId });\n if (!_.isUndefined(user)) {\n // fill in information in users list\n user.lastMessage = element.lastMessage?.text || '';\n user.lastMessageAt = !_.isEmpty(user.lastMessage) ? element.lastMessage?.createdAt : null;\n if (!_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[state.user.uid])) {\n user.unread = element.Unread[state.user.uid];\n }\n } else {\n // add to others section\n const user = {\n displayName: element.PrivateChatUser.displayName,\n id: element.PrivateChatUser.userId,\n key: element.PrivateChatUser.userId,\n lastMessage: element.lastMessage?.text || '',\n lastMessageAt: element.lastMessage?.createdAt || null,\n profilePic: element.PrivateChatUser.profilePic,\n profilePicThumb: element.PrivateChatUser.profilePic,\n section: 'Others',\n };\n if (!_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[state.user.uid])) {\n user.unread = element.Unread[state.user.uid];\n }\n others.push(user);\n }\n }\n });\n }\n const publicGroups = _.filter(circles.publicList, group => {\n // console.log('publicGroups', group.Audience);\n // filter circles you are in\n return !_.some(group.Audience, u => {\n return u.userId === state.user.uid;\n });\n });\n\n return {\n user: state.user,\n following: state.followers.following,\n users,\n otherMessages: others,\n groupUnread,\n peopleUnread,\n publicGroups,\n };\n};\n\nexport default withNavigationFocus(\n connect(mapStateToProps, {\n getGroupInvites,\n updatePublicGroups,\n updateGroups,\n updateUnreadCounter,\n clearGroupCounter,\n residentsLoaded,\n getFollowers,\n linkedUsersLoaded,\n linkedToUsersLoaded,\n })(PeoplePage),\n);\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Component","View","connect","withNavigationFocus","_","moment","Header","TouchableSearchBar","CategoryTabs","LoadingIndicator","getSite","NavigationService","ChatList","getGroupInvites","updatePublicGroups","updateGroups","updateUnreadCounter","clearGroupCounter","residentsLoaded","getFollowers","linkedUsersLoaded","linkedToUsersLoaded","circleActions","contactActions","userActions","TakeoverBackground","ContactsList","BaseComponents","values","PeoplePage","constructor","props","_defineProperty","user","uid","res","getGroups","data","Items","error","console","log","goBack","groupFetchInterval","state","selectedCategory","onlyGroups","textFeatureTitle","nextGroupsFetch","nextPeopleFetch","fetchingPublicGroups","fetchingResidents","fetchingLinkedUsers","fetchingLinkedToMe","isHomeTab","categories","categoryCounter","Circles","Contacts","componentDidMount","setState","getParentRoute","tab","setTimeout","getUserGroups","fetchUsers","getPublicGroups","setInterval","bind","updateLastFetch","UNSAFE_componentWillReceiveProps","nextProps","checkFocusRefresh","isFocused","componentWillUnmount","clearInterval","newFocus","utc","valueOf","updateBoth","add","site","category","getSiteResidents","isEmpty","results","sortBy","getLinkedUsers","getLinkedToMe","selectCategory","renderCategories","onlyPeople","createElement","categoryKeys","counterValues","groupUnread","peopleUnread","initialCategory","currentTab","onSelect","noScroll","catStyle","paddingHorizontal","renderHeader","leftIcon","onPressLeft","onPressBack","text","title","tabTitle","extraHeaderContent","centerContent","searchName","featureKey","priorityType","style","includes","hidden","marginRight","rightContent","NotificationBell","goToNotifs","renderPage","loading","content","publicGroups","isLoading","options","source","users","otherMessages","flex","visible","render","takeover","userTakeover","mapStateToProps","residents","list","unionBy","linkedList","linkedToList","others","circles","reducerKey","forEach","element","isUndefined","Unread","privateList","PrivateChatUser","lastMessage","find","id","userId","_element$lastMessage","_element$lastMessage2","lastMessageAt","createdAt","unread","_element$lastMessage3","_element$lastMessage4","displayName","key","profilePic","profilePicThumb","section","push","filter","publicList","group","some","Audience","u","following","followers"],"sources":["PeoplePage.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View } from 'react-native';\nimport { connect } from 'react-redux';\nimport { withNavigationFocus } from 'react-navigation';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport { Header, TouchableSearchBar, CategoryTabs, LoadingIndicator } from '../common';\nimport { getSite } from '../../js';\nimport NavigationService from '../../js/NavigationService';\nimport ChatList from './ChatList';\nimport {\n getGroupInvites,\n updatePublicGroups,\n updateGroups,\n updateUnreadCounter,\n clearGroupCounter,\n residentsLoaded,\n getFollowers,\n linkedUsersLoaded,\n linkedToUsersLoaded,\n} from '../../actions';\nimport { circleActions, contactActions, userActions } from '../../webapi';\nimport TakeoverBackground from '../takeover/TakeoverBackground';\nimport ContactsList from './ContactsList';\nimport { BaseComponents } from '../../feature.config';\nimport { values } from '../../values.config';\n\nclass PeoplePage extends Component {\n constructor(props) {\n super(props);\n this.groupFetchInterval = null;\n this.state = {\n selectedCategory: this.props.onlyGroups ? values.textFeatureTitle : 'Contacts',\n nextGroupsFetch: 0,\n nextPeopleFetch: 0,\n fetchingPublicGroups: true,\n fetchingResidents: true,\n fetchingLinkedUsers: true,\n fetchingLinkedToMe: true,\n isHomeTab: false,\n };\n this.categories = ['Contacts', values.textFeatureTitle];\n this.categoryCounter = { Circles: true, Contacts: true };\n }\n\n async componentDidMount() {\n this.setState({ isHomeTab: !NavigationService.getParentRoute() });\n\n if (this.props.tab) {\n this.setState({ selectedCategory: this.props.tab });\n }\n\n setTimeout(() => {\n this.getGroupInvites();\n }, 100);\n setTimeout(() => {\n this.getUserGroups();\n }, 200);\n setTimeout(() => {\n this.props.getFollowers(this.props.user.uid);\n }, 300);\n setTimeout(() => {\n this.fetchUsers();\n }, 2000);\n setTimeout(() => {\n this.getPublicGroups();\n }, 2500);\n\n this.groupFetchInterval = setInterval(this.getUserGroups.bind(this), 2000);\n\n this.updateLastFetch(true);\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.tab && nextProps.tab !== this.props.tab) {\n this.setState({ selectedCategory: nextProps.tab });\n }\n\n this.checkFocusRefresh(nextProps.isFocused);\n }\n\n componentWillUnmount() {\n clearInterval(this.groupFetchInterval);\n }\n\n checkFocusRefresh(newFocus) {\n if (newFocus && !this.props.isFocused) {\n setTimeout(() => {\n if (this.state.selectedCategory === values.textFeatureTitle && this.state.nextGroupsFetch < moment.utc().valueOf()) {\n this.getGroupInvites();\n this.getPublicGroups();\n this.updateLastFetch(false, true);\n }\n if (this.state.selectedCategory !== values.textFeatureTitle && this.state.nextPeopleFetch < moment.utc().valueOf()) {\n this.fetchUsers();\n this.props.getFollowers(this.props.user.uid);\n this.updateLastFetch(false, false);\n }\n this.getUserGroups();\n setTimeout(() => {\n this.getUserGroups();\n }, 5000);\n }, 1000);\n }\n }\n\n updateLastFetch(updateBoth, updateGroups) {\n const nextGroupsFetch = moment.utc();\n const nextPeopleFetch = moment.utc();\n nextGroupsFetch.add(2, 'seconds');\n nextPeopleFetch.add(5, 'minutes');\n\n if (updateBoth) {\n this.setState({\n nextGroupsFetch: nextGroupsFetch.valueOf(),\n nextPeopleFetch: nextPeopleFetch.valueOf(),\n });\n } else {\n if (updateGroups) {\n this.setState({\n nextGroupsFetch: nextGroupsFetch.valueOf(),\n });\n } else {\n this.setState({\n nextPeopleFetch: nextPeopleFetch.valueOf(),\n });\n }\n }\n }\n\n /***\n * Circles/Chat page functions\n */\n getGroupInvites = () => {\n this.props.getGroupInvites(this.props.user.uid);\n };\n\n getPublicGroups() {\n this.setState({ fetchingPublicGroups: true }, async () => {\n try {\n const res = await circleActions.getPublicGroups(getSite(this.props.user.site));\n // console.log('getPublicGroups', res.data);\n this.props.updatePublicGroups(res.data);\n } catch (error) {\n console.log('fetch public circles FAIL', error);\n } finally {\n this.setState({ fetchingPublicGroups: false });\n }\n });\n }\n\n getUserGroups = async () => {\n try {\n // Always exclude archived groups (false parameter)\n const res = await circleActions.getGroups(false);\n this.props.updateGroups(res.data.Items);\n this.props.updateUnreadCounter(res.data.Items, this.props.user.uid);\n } catch (error) {\n console.log('fetch circles FAIL', error);\n }\n };\n\n /***\n * Contacts page refetch\n */\n fetchUsers() {\n if (this.props.user.category !== 'family') {\n this.setState({ fetchingResidents: true }, async () => {\n try {\n const res = await contactActions.getSiteResidents(getSite(this.props.user.site));\n // console.log('getSiteResidents', res.data);\n if (!_.isEmpty(res.data.results.Items)) {\n this.props.residentsLoaded(_.sortBy(res.data.results.Items, 'displayName'));\n }\n } catch (error) {\n console.log('fetch site residents FAIL', error);\n } finally {\n this.setState({ fetchingResidents: false });\n }\n });\n } else {\n this.setState({ fetchingResidents: false });\n }\n\n this.setState({ fetchingLinkedUsers: true }, async () => {\n try {\n const res = await userActions.getLinkedUsers(this.props.user.uid);\n // console.log('getLinkedUsers', res.data);\n if (!_.isEmpty(res.data)) {\n this.props.linkedToUsersLoaded(_.sortBy(res.data, 'displayName'));\n }\n } catch (error) {\n console.log('fetch linked users FAIL', error);\n } finally {\n this.setState({ fetchingLinkedUsers: false });\n }\n });\n\n this.setState({ fetchingLinkedToMe: true }, async () => {\n try {\n const res = await userActions.getLinkedToMe(this.props.user.uid);\n // console.log('getLinkedToMe', res.data);\n if (!_.isEmpty(res.data)) {\n this.props.linkedUsersLoaded(_.sortBy(res.data.Items, 'displayName'));\n }\n } catch (error) {\n console.log('fetch linked to me FAIL', error);\n } finally {\n this.setState({ fetchingLinkedToMe: false });\n }\n });\n }\n\n selectCategory(category) {\n this.setState({\n selectedCategory: category,\n });\n if (category === values.textFeatureTitle && this.state.nextGroupsFetch < moment.utc().valueOf()) {\n this.getGroupInvites();\n this.getUserGroups();\n this.getPublicGroups();\n this.updateLastFetch(false, true);\n }\n if (category !== values.textFeatureTitle && this.state.nextPeopleFetch < moment.utc().valueOf()) {\n this.fetchUsers();\n this.props.getFollowers(this.props.user.uid);\n this.updateLastFetch(false, false);\n }\n }\n\n onPressBack = () => {\n NavigationService.goBack();\n };\n\n renderCategories() {\n if (this.props.onlyGroups || this.props.onlyPeople) {\n return null;\n }\n return (\n <CategoryTabs\n categoryKeys={this.categories}\n categoryCounter={this.categoryCounter}\n counterValues={{ Circles: this.props.groupUnread, Contacts: this.props.peopleUnread }}\n initialCategory={'Contacts'}\n currentTab={this.state.selectedCategory}\n onSelect={this.selectCategory.bind(this)}\n noScroll\n catStyle={{ paddingHorizontal: 16 }}\n />\n );\n }\n\n renderHeader() {\n if (!this.state.isHomeTab)\n return (\n <Header\n leftIcon=\"angle-left\"\n onPressLeft={this.onPressBack}\n text={this.props.title || this.props.tabTitle || 'People'}\n extraHeaderContent={this.renderCategories()}\n />\n );\n\n return (\n <Header\n centerContent={\n <TouchableSearchBar\n searchName={this.state.selectedCategory === values.textFeatureTitle ? values.featureKey : 'people'}\n priorityType={this.state.selectedCategory === values.textFeatureTitle ? values.featureKey : 'users'}\n style={_.includes(this.props.user.hidden, 'notifications') ? null : { marginRight: 0 }}\n />\n }\n rightContent={\n _.includes(this.props.user.hidden, 'notifications') ? null : (\n <BaseComponents.NotificationBell\n goToNotifs={() => {\n this.goToNotifs.bind(this);\n }}\n />\n )\n }\n extraHeaderContent={this.renderCategories()}\n />\n );\n }\n\n renderPage() {\n let loading = false;\n const content = (() => {\n // console.log('renderPage', this.state.selectedCategory);\n switch (this.state.selectedCategory) {\n case values.textFeatureTitle:\n loading = this.state.fetchingPublicGroups;\n return <ChatList publicGroups={this.props.publicGroups} isLoading={loading} options={this.props.options} />;\n case 'Contacts':\n loading = this.state.fetchingResidents || this.state.fetchingLinkedUsers || this.state.fetchingLinkedToMe;\n return (\n <ContactsList\n source={this.props.users}\n otherMessages={this.props.otherMessages}\n isLoading={loading}\n options={this.props.options}\n />\n );\n default:\n break;\n }\n return null;\n })();\n\n return (\n <View style={{ flex: 1 }}>\n <LoadingIndicator visible={loading} />\n {content}\n </View>\n );\n }\n\n render() {\n return (\n <TakeoverBackground takeover={this.props.userTakeover}>\n {this.renderHeader()}\n {this.renderPage()}\n </TakeoverBackground>\n );\n }\n}\n\nconst mapStateToProps = state => {\n // console.log('mapStateToProps circles', state.circles);\n const residents = state.user.category !== 'family' ? state.residents.list : [];\n let users = _.unionBy([...state.residents.linkedList, ...state.residents.linkedToList, ...residents], 'id');\n let groupUnread = 0;\n let peopleUnread = 0;\n const others = [];\n const circles = state[values.reducerKey];\n if (state.user.uid != null) {\n (circles.list || []).forEach(element => {\n if (\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[state.user.uid]) &&\n element.Unread[state.user.uid] > 0\n ) {\n groupUnread += 1;\n }\n });\n (circles.privateList || []).forEach(element => {\n if (\n !!element.PrivateChatUser &&\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[state.user.uid]) &&\n element.Unread[state.user.uid] > 0\n ) {\n peopleUnread += 1;\n }\n if (!!element.lastMessage && !!element.PrivateChatUser) {\n const user = _.find(users, { id: element.PrivateChatUser.userId });\n if (!_.isUndefined(user)) {\n // fill in information in users list\n user.lastMessage = element.lastMessage?.text || '';\n user.lastMessageAt = !_.isEmpty(user.lastMessage) ? element.lastMessage?.createdAt : null;\n if (!_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[state.user.uid])) {\n user.unread = element.Unread[state.user.uid];\n }\n } else {\n // add to others section\n const user = {\n displayName: element.PrivateChatUser.displayName,\n id: element.PrivateChatUser.userId,\n key: element.PrivateChatUser.userId,\n lastMessage: element.lastMessage?.text || '',\n lastMessageAt: element.lastMessage?.createdAt || null,\n profilePic: element.PrivateChatUser.profilePic,\n profilePicThumb: element.PrivateChatUser.profilePic,\n section: 'Others',\n };\n if (!_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[state.user.uid])) {\n user.unread = element.Unread[state.user.uid];\n }\n others.push(user);\n }\n }\n });\n }\n const publicGroups = _.filter(circles.publicList, group => {\n // console.log('publicGroups', group.Audience);\n // filter circles you are in\n return !_.some(group.Audience, u => {\n return u.userId === state.user.uid;\n });\n });\n\n return {\n user: state.user,\n following: state.followers.following,\n users,\n otherMessages: others,\n groupUnread,\n peopleUnread,\n publicGroups,\n };\n};\n\nexport default withNavigationFocus(\n connect(mapStateToProps, {\n getGroupInvites,\n updatePublicGroups,\n updateGroups,\n updateUnreadCounter,\n clearGroupCounter,\n residentsLoaded,\n getFollowers,\n linkedUsersLoaded,\n linkedToUsersLoaded,\n })(PeoplePage),\n);\n"],"mappings":"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"}
@@ -30,7 +30,7 @@ const getMessages = state => {
30
30
  } = state;
31
31
  let messages = [];
32
32
  if (user.uid != null) {
33
- circles.list.forEach(element => {
33
+ (circles.list || []).forEach(element => {
34
34
  if (!element.Deleted && !_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[user.uid]) && element.Unread[user.uid] > 0) {
35
35
  messages.push({
36
36
  ...element,
@@ -39,7 +39,7 @@ const getMessages = state => {
39
39
  });
40
40
  }
41
41
  });
42
- circles.privateList.forEach(element => {
42
+ (circles.privateList || []).forEach(element => {
43
43
  if (!element.Deleted && !!element.PrivateChatUser && !_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[user.uid]) && element.Unread[user.uid] > 0) {
44
44
  messages.push({
45
45
  ...element,
@@ -61,7 +61,7 @@ const getCount = state => {
61
61
  const inviteCount = (circles === null || circles === void 0 || (_circles$invites = circles.invites) === null || _circles$invites === void 0 ? void 0 : _circles$invites.length) || 0;
62
62
  let circleUnread = 0;
63
63
  if (user.uid != null) {
64
- circles.list.forEach(element => {
64
+ (circles.list || []).forEach(element => {
65
65
  if (!_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[user.uid]) && element.Unread[user.uid] > 0) {
66
66
  circleUnread += 1;
67
67
  }
@@ -88,7 +88,7 @@ const getUserCircles = async (props, store) => {
88
88
  // Update unread
89
89
  if (!_.isEmpty(data.Items)) {
90
90
  let counter = 0;
91
- data.Items.forEach(element => {
91
+ (data.Items || []).forEach(element => {
92
92
  if (!element.Deleted && !_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[props.user.uid])) {
93
93
  counter += element.Unread[props.user.uid];
94
94
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_","PlussCore","ARCHIVE_CIRCLE","CIRCLE_INVITES_LOADED","CIRCLES_LOAD_INITIALISE","UPDATE_CIRCLE_UNREAD","getSessionTokenAWS","mapStateToDirectMessages","circleActions","refreshGroups","values","Services","navigation","BaseComponents","NotificationBell","INVITE_KEY","inviteKey","MESSAGE_KEY","messageKey","CHAT_TYPE","notificationMessage","CHAT_ROUTE","chatRoute","getInvites","state","reducerKey","invites","map","invite","InviteType","Timestamp","CreatedTime","getMessages","circles","user","messages","uid","list","forEach","element","Deleted","isUndefined","Unread","isEmpty","push","MessageType","Changed","privateList","PrivateChatUser","isPrivate","orderBy","getCount","_circles$invites","inviteCount","length","circleUnread","getUserCircles","props","store","data","getGroups","dispatch","type","payload","Items","counter","fetchAll","token","getGroupInvites","error","console","fetchToaster","notification","notificationDirectMessage","setTimeout","handle","currentRoute","displayToast","navigate","refreshFunc","navigateFunc","prop","chat","key","Id","openDirectMessage","site","targetUserId","loadingChanged","screenCircleChat","getDirect","then","res","archiveConversation","groupId","archiveGroup","FeatureConfig","featureKey","title","textFeatureTitle","gridMenu","icon","viewBox","screenCirclePeopleContainer","options","onlyGroups","addMenu","order","textAddMenuTitle","screenNewCircle","visibleExps","settings","allowAnyCreate","value","exps","permission","message","messaging","refreshChats","hideTabBar","screenCircleDetails","screenEditCircle","env","baseStage","baseAPIUrl","hasGradientHeader","defaultProfileImage","tinyChatDefault","baseUploadsUrl","allowMediaDownload","allowMediaSharing","awsUploadsBucket","awsStorageBucket","preferredSite","strings","newEventDefaults","defaultAllowComments","init","environment","notificationBell","Config"],"sources":["feature.config.js"],"sourcesContent":["import _ from 'lodash';\n// import * as PlussCore from '../../pluss-core/src';\nimport * as PlussCore from '@plusscommunities/pluss-core-app';\nimport { ARCHIVE_CIRCLE, CIRCLE_INVITES_LOADED, CIRCLES_LOAD_INITIALISE, UPDATE_CIRCLE_UNREAD } from './actions/types';\nimport { getSessionTokenAWS, mapStateToDirectMessages } from './js';\nimport { circleActions } from './webapi';\nimport { refreshGroups } from './actions';\nimport { values } from './values.config';\n\nexport const Services = {\n navigation: null,\n};\n\nexport const BaseComponents = {\n NotificationBell: null,\n};\n\nconst INVITE_KEY = values.inviteKey;\nconst MESSAGE_KEY = values.messageKey;\nconst CHAT_TYPE = values.notificationMessage;\nconst CHAT_ROUTE = values.chatRoute;\n\nconst getInvites = state => {\n return state[values.reducerKey].invites.map(invite => {\n invite.InviteType = INVITE_KEY;\n invite.Timestamp = invite.CreatedTime;\n return invite;\n });\n};\n\nconst getMessages = state => {\n const circles = state[values.reducerKey];\n const { user } = state;\n\n let messages = [];\n if (user.uid != null) {\n circles.list.forEach(element => {\n if (\n !element.Deleted &&\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[user.uid]) &&\n element.Unread[user.uid] > 0\n ) {\n messages.push({\n ...element,\n MessageType: MESSAGE_KEY,\n Timestamp: element.Changed * 1000,\n });\n }\n });\n circles.privateList.forEach(element => {\n if (\n !element.Deleted &&\n !!element.PrivateChatUser &&\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[user.uid]) &&\n element.Unread[user.uid] > 0\n ) {\n messages.push({\n ...element,\n isPrivate: true,\n MessageType: MESSAGE_KEY,\n Timestamp: element.Changed * 1000,\n });\n }\n });\n }\n\n return _.orderBy(messages, 'Changed', 'desc');\n};\n\nconst getCount = state => {\n const circles = state[values.reducerKey];\n const { user } = state;\n const inviteCount = circles?.invites?.length || 0;\n\n let circleUnread = 0;\n if (user.uid != null) {\n circles.list.forEach(element => {\n if (\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[user.uid]) &&\n element.Unread[user.uid] > 0\n ) {\n circleUnread += 1;\n }\n });\n (circles.privateList || []).forEach(element => {\n if (\n !!element.PrivateChatUser &&\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[user.uid]) &&\n element.Unread[user.uid] > 0\n ) {\n circleUnread += 1;\n }\n });\n }\n\n // console.log('circles', inviteCount, circleUnread);\n return inviteCount + circleUnread;\n};\n\nconst getUserCircles = async (props, store) => {\n // Get user circles\n const { data } = await circleActions.getGroups();\n store.dispatch({\n type: CIRCLES_LOAD_INITIALISE,\n payload: data.Items,\n });\n // Update unread\n if (!_.isEmpty(data.Items)) {\n let counter = 0;\n data.Items.forEach(element => {\n if (\n !element.Deleted &&\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[props.user.uid])\n ) {\n counter += element.Unread[props.user.uid];\n }\n });\n store.dispatch({\n type: UPDATE_CIRCLE_UNREAD,\n payload: counter,\n });\n }\n};\n\nconst fetchAll = async (props, store) => {\n try {\n // Get circle invites\n const token = await getSessionTokenAWS('Bearer');\n const { data } = await circleActions.getGroupInvites(props.user.uid, token);\n store.dispatch({\n type: CIRCLE_INVITES_LOADED,\n payload: data.Items,\n });\n\n await getUserCircles(props, store);\n } catch (error) {\n console.error('pluss-circles fetch all', error);\n }\n};\n\nconst fetchToaster = (props, store) => {\n try {\n const { notification } = props;\n if (notification.data.type === CHAT_TYPE || notification.data.type === values.notificationDirectMessage) {\n setTimeout(async () => {\n await getUserCircles(props, store);\n }, 100);\n return true;\n }\n } catch (error) {\n console.error('pluss-circles fetch toaster', error);\n }\n return false;\n};\n\nconst handle = (notification, props, currentRoute) => {\n if (notification.data.type === CHAT_TYPE) {\n if (currentRoute !== CHAT_ROUTE) props.displayToast(notification);\n return true;\n }\n return false;\n};\n\nconst navigate = (notification, currentRoute, refreshFunc, navigateFunc) => {\n if (notification.data.type === CHAT_TYPE) {\n const prop = {\n chat: {\n key: notification.data.key,\n Id: notification.data.key,\n },\n };\n if (currentRoute === CHAT_ROUTE) {\n refreshFunc(prop);\n } else {\n navigateFunc(CHAT_ROUTE, prop);\n }\n return true;\n }\n return false;\n};\n\nconst openDirectMessage = (site, targetUserId, chat, loadingChanged) => {\n if (chat) {\n Services.navigation.navigate(values.screenCircleChat, { chat });\n } else {\n loadingChanged && loadingChanged(true);\n circleActions.getDirect(site, targetUserId).then(res => {\n Services.navigation.navigate(values.screenCircleChat, { chat: res.data });\n loadingChanged && loadingChanged(false);\n });\n }\n};\n\n// This returns a thunk that needs to be dispatched\nconst archiveConversation = groupId => {\n return async dispatch => {\n // Immediately remove from UI (optimistic update)\n dispatch({\n type: ARCHIVE_CIRCLE,\n payload: groupId,\n });\n\n try {\n const res = await circleActions.archiveGroup(groupId, true);\n return true;\n } catch (error) {\n // On error, the next refresh will restore it if the archive failed\n return false;\n }\n };\n};\n\nconst FeatureConfig = {\n key: values.featureKey,\n title: values.textFeatureTitle,\n gridMenu: {\n icon: 'groups',\n viewBox: '0 0 30 30',\n navigate: values.screenCirclePeopleContainer,\n options: {\n onlyGroups: true,\n },\n },\n addMenu: {\n order: 5,\n icon: 'groups',\n title: values.textAddMenuTitle,\n navigate: values.screenNewCircle,\n visibleExps: values.settings.allowAnyCreate\n ? { type: 'feature', value: values.featureKey }\n : {\n type: 'and',\n exps: [\n { type: 'feature', value: values.featureKey },\n { type: 'permission', value: values.permission },\n ],\n },\n },\n notification: {\n invite: {\n key: INVITE_KEY,\n getInvites,\n },\n message: {\n key: MESSAGE_KEY,\n getMessages,\n },\n getCount,\n fetchAll,\n fetchToaster,\n handle,\n navigate,\n },\n messaging: {\n openDirectMessage,\n mapStateToDirectMessages,\n refreshChats: refreshGroups,\n archiveConversation,\n },\n hideTabBar: [values.screenNewCircle, values.screenCircleDetails, values.screenEditCircle],\n env: {\n baseStage: '',\n baseAPIUrl: '',\n hasGradientHeader: false,\n defaultProfileImage: '',\n tinyChatDefault: '',\n baseUploadsUrl: '',\n allowMediaDownload: false,\n allowMediaSharing: false,\n awsUploadsBucket: '',\n awsStorageBucket: '',\n preferredSite: '',\n strings: {},\n newEventDefaults: '',\n defaultAllowComments: true,\n },\n init: (environment, navigation, notificationBell) => {\n FeatureConfig.env = environment;\n Services.navigation = navigation;\n BaseComponents.NotificationBell = notificationBell;\n PlussCore.Config.init(environment, navigation);\n },\n};\nexport default FeatureConfig;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_","PlussCore","ARCHIVE_CIRCLE","CIRCLE_INVITES_LOADED","CIRCLES_LOAD_INITIALISE","UPDATE_CIRCLE_UNREAD","getSessionTokenAWS","mapStateToDirectMessages","circleActions","refreshGroups","values","Services","navigation","BaseComponents","NotificationBell","INVITE_KEY","inviteKey","MESSAGE_KEY","messageKey","CHAT_TYPE","notificationMessage","CHAT_ROUTE","chatRoute","getInvites","state","reducerKey","invites","map","invite","InviteType","Timestamp","CreatedTime","getMessages","circles","user","messages","uid","list","forEach","element","Deleted","isUndefined","Unread","isEmpty","push","MessageType","Changed","privateList","PrivateChatUser","isPrivate","orderBy","getCount","_circles$invites","inviteCount","length","circleUnread","getUserCircles","props","store","data","getGroups","dispatch","type","payload","Items","counter","fetchAll","token","getGroupInvites","error","console","fetchToaster","notification","notificationDirectMessage","setTimeout","handle","currentRoute","displayToast","navigate","refreshFunc","navigateFunc","prop","chat","key","Id","openDirectMessage","site","targetUserId","loadingChanged","screenCircleChat","getDirect","then","res","archiveConversation","groupId","archiveGroup","FeatureConfig","featureKey","title","textFeatureTitle","gridMenu","icon","viewBox","screenCirclePeopleContainer","options","onlyGroups","addMenu","order","textAddMenuTitle","screenNewCircle","visibleExps","settings","allowAnyCreate","value","exps","permission","message","messaging","refreshChats","hideTabBar","screenCircleDetails","screenEditCircle","env","baseStage","baseAPIUrl","hasGradientHeader","defaultProfileImage","tinyChatDefault","baseUploadsUrl","allowMediaDownload","allowMediaSharing","awsUploadsBucket","awsStorageBucket","preferredSite","strings","newEventDefaults","defaultAllowComments","init","environment","notificationBell","Config"],"sources":["feature.config.js"],"sourcesContent":["import _ from 'lodash';\n// import * as PlussCore from '../../pluss-core/src';\nimport * as PlussCore from '@plusscommunities/pluss-core-app';\nimport { ARCHIVE_CIRCLE, CIRCLE_INVITES_LOADED, CIRCLES_LOAD_INITIALISE, UPDATE_CIRCLE_UNREAD } from './actions/types';\nimport { getSessionTokenAWS, mapStateToDirectMessages } from './js';\nimport { circleActions } from './webapi';\nimport { refreshGroups } from './actions';\nimport { values } from './values.config';\n\nexport const Services = {\n navigation: null,\n};\n\nexport const BaseComponents = {\n NotificationBell: null,\n};\n\nconst INVITE_KEY = values.inviteKey;\nconst MESSAGE_KEY = values.messageKey;\nconst CHAT_TYPE = values.notificationMessage;\nconst CHAT_ROUTE = values.chatRoute;\n\nconst getInvites = state => {\n return state[values.reducerKey].invites.map(invite => {\n invite.InviteType = INVITE_KEY;\n invite.Timestamp = invite.CreatedTime;\n return invite;\n });\n};\n\nconst getMessages = state => {\n const circles = state[values.reducerKey];\n const { user } = state;\n\n let messages = [];\n if (user.uid != null) {\n (circles.list || []).forEach(element => {\n if (\n !element.Deleted &&\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[user.uid]) &&\n element.Unread[user.uid] > 0\n ) {\n messages.push({\n ...element,\n MessageType: MESSAGE_KEY,\n Timestamp: element.Changed * 1000,\n });\n }\n });\n (circles.privateList || []).forEach(element => {\n if (\n !element.Deleted &&\n !!element.PrivateChatUser &&\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[user.uid]) &&\n element.Unread[user.uid] > 0\n ) {\n messages.push({\n ...element,\n isPrivate: true,\n MessageType: MESSAGE_KEY,\n Timestamp: element.Changed * 1000,\n });\n }\n });\n }\n\n return _.orderBy(messages, 'Changed', 'desc');\n};\n\nconst getCount = state => {\n const circles = state[values.reducerKey];\n const { user } = state;\n const inviteCount = circles?.invites?.length || 0;\n\n let circleUnread = 0;\n if (user.uid != null) {\n (circles.list || []).forEach(element => {\n if (\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[user.uid]) &&\n element.Unread[user.uid] > 0\n ) {\n circleUnread += 1;\n }\n });\n (circles.privateList || []).forEach(element => {\n if (\n !!element.PrivateChatUser &&\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[user.uid]) &&\n element.Unread[user.uid] > 0\n ) {\n circleUnread += 1;\n }\n });\n }\n\n // console.log('circles', inviteCount, circleUnread);\n return inviteCount + circleUnread;\n};\n\nconst getUserCircles = async (props, store) => {\n // Get user circles\n const { data } = await circleActions.getGroups();\n store.dispatch({\n type: CIRCLES_LOAD_INITIALISE,\n payload: data.Items,\n });\n // Update unread\n if (!_.isEmpty(data.Items)) {\n let counter = 0;\n (data.Items || []).forEach(element => {\n if (\n !element.Deleted &&\n !_.isUndefined(element.Unread) &&\n !_.isEmpty(element.Unread) &&\n !_.isUndefined(element.Unread[props.user.uid])\n ) {\n counter += element.Unread[props.user.uid];\n }\n });\n store.dispatch({\n type: UPDATE_CIRCLE_UNREAD,\n payload: counter,\n });\n }\n};\n\nconst fetchAll = async (props, store) => {\n try {\n // Get circle invites\n const token = await getSessionTokenAWS('Bearer');\n const { data } = await circleActions.getGroupInvites(props.user.uid, token);\n store.dispatch({\n type: CIRCLE_INVITES_LOADED,\n payload: data.Items,\n });\n\n await getUserCircles(props, store);\n } catch (error) {\n console.error('pluss-circles fetch all', error);\n }\n};\n\nconst fetchToaster = (props, store) => {\n try {\n const { notification } = props;\n if (notification.data.type === CHAT_TYPE || notification.data.type === values.notificationDirectMessage) {\n setTimeout(async () => {\n await getUserCircles(props, store);\n }, 100);\n return true;\n }\n } catch (error) {\n console.error('pluss-circles fetch toaster', error);\n }\n return false;\n};\n\nconst handle = (notification, props, currentRoute) => {\n if (notification.data.type === CHAT_TYPE) {\n if (currentRoute !== CHAT_ROUTE) props.displayToast(notification);\n return true;\n }\n return false;\n};\n\nconst navigate = (notification, currentRoute, refreshFunc, navigateFunc) => {\n if (notification.data.type === CHAT_TYPE) {\n const prop = {\n chat: {\n key: notification.data.key,\n Id: notification.data.key,\n },\n };\n if (currentRoute === CHAT_ROUTE) {\n refreshFunc(prop);\n } else {\n navigateFunc(CHAT_ROUTE, prop);\n }\n return true;\n }\n return false;\n};\n\nconst openDirectMessage = (site, targetUserId, chat, loadingChanged) => {\n if (chat) {\n Services.navigation.navigate(values.screenCircleChat, { chat });\n } else {\n loadingChanged && loadingChanged(true);\n circleActions.getDirect(site, targetUserId).then(res => {\n Services.navigation.navigate(values.screenCircleChat, { chat: res.data });\n loadingChanged && loadingChanged(false);\n });\n }\n};\n\n// This returns a thunk that needs to be dispatched\nconst archiveConversation = groupId => {\n return async dispatch => {\n // Immediately remove from UI (optimistic update)\n dispatch({\n type: ARCHIVE_CIRCLE,\n payload: groupId,\n });\n\n try {\n const res = await circleActions.archiveGroup(groupId, true);\n return true;\n } catch (error) {\n // On error, the next refresh will restore it if the archive failed\n return false;\n }\n };\n};\n\nconst FeatureConfig = {\n key: values.featureKey,\n title: values.textFeatureTitle,\n gridMenu: {\n icon: 'groups',\n viewBox: '0 0 30 30',\n navigate: values.screenCirclePeopleContainer,\n options: {\n onlyGroups: true,\n },\n },\n addMenu: {\n order: 5,\n icon: 'groups',\n title: values.textAddMenuTitle,\n navigate: values.screenNewCircle,\n visibleExps: values.settings.allowAnyCreate\n ? { type: 'feature', value: values.featureKey }\n : {\n type: 'and',\n exps: [\n { type: 'feature', value: values.featureKey },\n { type: 'permission', value: values.permission },\n ],\n },\n },\n notification: {\n invite: {\n key: INVITE_KEY,\n getInvites,\n },\n message: {\n key: MESSAGE_KEY,\n getMessages,\n },\n getCount,\n fetchAll,\n fetchToaster,\n handle,\n navigate,\n },\n messaging: {\n openDirectMessage,\n mapStateToDirectMessages,\n refreshChats: refreshGroups,\n archiveConversation,\n },\n hideTabBar: [values.screenNewCircle, values.screenCircleDetails, values.screenEditCircle],\n env: {\n baseStage: '',\n baseAPIUrl: '',\n hasGradientHeader: false,\n defaultProfileImage: '',\n tinyChatDefault: '',\n baseUploadsUrl: '',\n allowMediaDownload: false,\n allowMediaSharing: false,\n awsUploadsBucket: '',\n awsStorageBucket: '',\n preferredSite: '',\n strings: {},\n newEventDefaults: '',\n defaultAllowComments: true,\n },\n init: (environment, navigation, notificationBell) => {\n FeatureConfig.env = environment;\n Services.navigation = navigation;\n BaseComponents.NotificationBell = notificationBell;\n PlussCore.Config.init(environment, navigation);\n },\n};\nexport default FeatureConfig;\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plusscommunities/pluss-circles-app-groups",
3
- "version": "6.0.13",
3
+ "version": "6.0.15",
4
4
  "description": "Extension package to enable circles on Pluss Communities Platform",
5
5
  "main": "dist/module/index.js",
6
6
  "module": "dist/module/index.js",
@@ -335,7 +335,7 @@ const mapStateToProps = state => {
335
335
  const others = [];
336
336
  const circles = state[values.reducerKey];
337
337
  if (state.user.uid != null) {
338
- circles.list.forEach(element => {
338
+ (circles.list || []).forEach(element => {
339
339
  if (
340
340
  !_.isUndefined(element.Unread) &&
341
341
  !_.isEmpty(element.Unread) &&
@@ -345,7 +345,7 @@ const mapStateToProps = state => {
345
345
  groupUnread += 1;
346
346
  }
347
347
  });
348
- circles.privateList.forEach(element => {
348
+ (circles.privateList || []).forEach(element => {
349
349
  if (
350
350
  !!element.PrivateChatUser &&
351
351
  !_.isUndefined(element.Unread) &&
@@ -34,7 +34,7 @@ const getMessages = state => {
34
34
 
35
35
  let messages = [];
36
36
  if (user.uid != null) {
37
- circles.list.forEach(element => {
37
+ (circles.list || []).forEach(element => {
38
38
  if (
39
39
  !element.Deleted &&
40
40
  !_.isUndefined(element.Unread) &&
@@ -49,7 +49,7 @@ const getMessages = state => {
49
49
  });
50
50
  }
51
51
  });
52
- circles.privateList.forEach(element => {
52
+ (circles.privateList || []).forEach(element => {
53
53
  if (
54
54
  !element.Deleted &&
55
55
  !!element.PrivateChatUser &&
@@ -78,7 +78,7 @@ const getCount = state => {
78
78
 
79
79
  let circleUnread = 0;
80
80
  if (user.uid != null) {
81
- circles.list.forEach(element => {
81
+ (circles.list || []).forEach(element => {
82
82
  if (
83
83
  !_.isUndefined(element.Unread) &&
84
84
  !_.isEmpty(element.Unread) &&
@@ -115,7 +115,7 @@ const getUserCircles = async (props, store) => {
115
115
  // Update unread
116
116
  if (!_.isEmpty(data.Items)) {
117
117
  let counter = 0;
118
- data.Items.forEach(element => {
118
+ (data.Items || []).forEach(element => {
119
119
  if (
120
120
  !element.Deleted &&
121
121
  !_.isUndefined(element.Unread) &&