@plusscommunities/pluss-circles-app 7.0.0 → 7.0.1-auth.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.
Files changed (63) hide show
  1. package/dist/module/actions/ChatActions.js.map +1 -1
  2. package/dist/module/actions/GroupActions.js.map +1 -1
  3. package/dist/module/actions/index.js.map +1 -1
  4. package/dist/module/actions/types.js.map +1 -1
  5. package/dist/module/assets/fonts.js.map +1 -1
  6. package/dist/module/components/chat/Chat.js +46 -3
  7. package/dist/module/components/chat/Chat.js.map +1 -1
  8. package/dist/module/components/chat/ChatList.js +42 -24
  9. package/dist/module/components/chat/ChatList.js.map +1 -1
  10. package/dist/module/components/chat/ContactsList.js +2 -2
  11. package/dist/module/components/chat/ContactsList.js.map +1 -1
  12. package/dist/module/components/chat/KioskPeoplePage.js +2 -2
  13. package/dist/module/components/chat/KioskPeoplePage.js.map +1 -1
  14. package/dist/module/components/chat/PeopleContainer.js.map +1 -1
  15. package/dist/module/components/chat/PeoplePage.js +8 -6
  16. package/dist/module/components/chat/PeoplePage.js.map +1 -1
  17. package/dist/module/components/common/index.js.map +1 -1
  18. package/dist/module/components/events/EventInvitePopup.js.map +1 -1
  19. package/dist/module/components/groups/EditGroup.js +2 -2
  20. package/dist/module/components/groups/EditGroup.js.map +1 -1
  21. package/dist/module/components/groups/GroupDetails.js +2 -2
  22. package/dist/module/components/groups/GroupDetails.js.map +1 -1
  23. package/dist/module/components/groups/GroupsList.js +2 -2
  24. package/dist/module/components/groups/GroupsList.js.map +1 -1
  25. package/dist/module/components/groups/GroupsWidget.js +2 -2
  26. package/dist/module/components/groups/GroupsWidget.js.map +1 -1
  27. package/dist/module/components/groups/NewGroup.js +2 -2
  28. package/dist/module/components/groups/NewGroup.js.map +1 -1
  29. package/dist/module/components/groups/PublicGroup.js.map +1 -1
  30. package/dist/module/components/groups/PublicGroupAction.js.map +1 -1
  31. package/dist/module/components/notifications/GroupInvite.js.map +1 -1
  32. package/dist/module/components/notifications/GroupInviteAction.js.map +1 -1
  33. package/dist/module/components/notifications/GroupMessage.js +4 -4
  34. package/dist/module/components/notifications/GroupMessage.js.map +1 -1
  35. package/dist/module/components/takeover/TakeoverBackground.js.map +1 -1
  36. package/dist/module/config/index.js.map +1 -1
  37. package/dist/module/core.config.js.map +1 -1
  38. package/dist/module/feature.config.js.map +1 -1
  39. package/dist/module/index.js.map +1 -1
  40. package/dist/module/js/Colors.js.map +1 -1
  41. package/dist/module/js/NavigationService.js.map +1 -1
  42. package/dist/module/js/Styles.js.map +1 -1
  43. package/dist/module/js/circles/MapStateToDirectMessages.js.map +1 -1
  44. package/dist/module/js/index.js.map +1 -1
  45. package/dist/module/reducers/ChatsReducer.js +2 -2
  46. package/dist/module/reducers/ChatsReducer.js.map +1 -1
  47. package/dist/module/reducers/GroupsReducer.js +2 -2
  48. package/dist/module/reducers/GroupsReducer.js.map +1 -1
  49. package/dist/module/reducers/reducerKeys.js.map +1 -1
  50. package/dist/module/values.config.default.js.map +1 -1
  51. package/dist/module/values.config.groups.js.map +1 -1
  52. package/dist/module/values.config.js.map +1 -1
  53. package/dist/module/webapi/circleActions.js.map +1 -1
  54. package/dist/module/webapi/helper.js.map +1 -1
  55. package/dist/module/webapi/index.js.map +1 -1
  56. package/dist/module/webapi/messageActions.js +11 -0
  57. package/dist/module/webapi/messageActions.js.map +1 -1
  58. package/package.json +7 -3
  59. package/src/components/chat/Chat.js +49 -1
  60. package/src/components/chat/ChatList.js +65 -34
  61. package/src/components/chat/PeoplePage.js +4 -4
  62. package/src/components/notifications/GroupMessage.js +2 -2
  63. package/src/webapi/messageActions.js +11 -0
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","View","TouchableOpacity","Text","FlatList","ScrollView","connect","moment","_","Icon","ProfilePic","EmptyStateMain","TextStyle","NavigationService","TEXT_DARK","TEXT_MID","TEXT_LIGHT","COLOUR_GREEN","getMainBrandingColourFromState","getSiteSettingFromState","clearGroupCounter","GroupInvite","CONST_STRINGS","PublicGroup","values","ChatList","constructor","_isMounted","state","showMore","dataSource","invites","publicGroups","componentDidMount","createDataSource","props","setState","UNSAFE_componentWillReceiveProps","nextProps","groups","setTimeout","shouldComponentUpdate","nextState","componentWillUnmount","onPressChat","group","Id","user","uid","navigate","screenCircleChat","chat","onPressBack","goBack","onClosePublicGroup","joined","index","indexOf","splice","newPublicGroups","getChatName","isEmpty","Title","IsPrivate","otherUser","find","Audience","u","userId","displayName","userNames","names","without","Object","keys","length","join","getChatImage","Thumbnail","Image","profilePic","getTimeText","input","gug","local","isBefore","startOf","format","getLastMessage","isUndefined","lastMessage","entityName","text","chatsToUse","filter","deleted","Deleted","messages","orderBy","chats","take","first","firstPrivate","c","getEmptyStateText","options","EmptyText","EMPTY_GROUPS","shouldRenderPublicGroups","circleAllowPublicCircles","category","renderReply","lastUserKey","createElement","name","type","iconStyle","styles","chatReplyIcon","renderUnreadCounter","counter","style","counterText","renderChat","chatName","chatImage","unreadCounter","Unread","key","marginTop","dmHeading","activeOpacity","onPress","bind","listItem","Diameter","listItemTextContainer","rowReverse","chatTimeStamp","color","fontFamily","Changed","fill","chatUserName","chatTextBold","numberOfLines","chatLastMessage","renderInvites","source","item","Rejected","map","invite","event","showHeader","renderPublicGroups","onClose","renderListHeader","ListHeaderComponent","isWidget","internalHeader","horizontal","renderEmptyList","isLoading","title","height","paddingTop","marginHorizontal","render","limit","slice","container","mainContainer","keyboardShouldPersistTaps","data","ListEmptyComponent","keyExtractor","renderItem","ListFooterComponent","paddingVertical","card","position","paddingHorizontal","marginBottom","sectionTitleContainer","paddingBottom","justifyContent","sectionTitle","fontSize","flex","flexDirection","alignItems","backgroundColor","extraSeparation","unreadMarker","width","borderRadius","marginLeft","chatLastMessageContainer","paddingRight","marginRight","addButtonContainer","right","bottom","addButton","left","minWidth","textAlign","padding","mapStateToProps","circles","reducerKey","list","unreadCount","colourBrandingMain","allowPublicKey"],"sources":["ChatList.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View, TouchableOpacity, Text, FlatList, ScrollView } from 'react-native';\nimport { connect } from 'react-redux';\nimport moment from 'moment';\nimport _ from 'lodash';\nimport { Icon } from '@rneui/themed';\nimport { ProfilePic, EmptyStateMain, TextStyle } from '../common';\nimport NavigationService from '../../js/NavigationService';\nimport { TEXT_DARK, TEXT_MID, TEXT_LIGHT, COLOUR_GREEN, getMainBrandingColourFromState, getSiteSettingFromState } from '../../js';\nimport { clearGroupCounter } from '../../actions';\nimport GroupInvite from '../notifications/GroupInvite';\nimport { CONST_STRINGS } from '../../config';\nimport PublicGroup from '../groups/PublicGroup';\nimport { values } from '../../values.config';\n\nclass ChatList extends Component {\n constructor() {\n super();\n\n this._isMounted = false;\n this.state = {\n showMore: true,\n dataSource: [],\n invites: [],\n publicGroups: [],\n };\n }\n\n async componentDidMount() {\n this._isMounted = true;\n\n this.createDataSource(this.props);\n this.setState({ publicGroups: this.props.publicGroups });\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.groups !== this.props.groups) {\n setTimeout(() => {\n this.createDataSource(nextProps);\n }, 500);\n }\n if (nextProps.publicGroups !== this.props.publicGroups) {\n this.setState({\n publicGroups: nextProps.publicGroups,\n });\n }\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n return nextState.dataSource !== this.props.dataSource;\n }\n\n componentWillUnmount() {\n this._isMounted = false;\n }\n\n onPressChat(group) {\n this.props.clearGroupCounter(group.Id, this.props.user.uid);\n NavigationService.navigate(values.screenCircleChat, { chat: group });\n }\n\n onPressBack() {\n NavigationService.goBack();\n }\n\n onClosePublicGroup(group, joined) {\n if (joined) {\n const index = this.state.publicGroups.indexOf(group);\n if (index > -1) {\n this.state.publicGroups.splice(index, 1);\n const newPublicGroups = this.state.publicGroups;\n if (this._isMounted) {\n this.setState({\n publicGroups: newPublicGroups,\n });\n }\n }\n }\n }\n\n getChatName(chat) {\n if (!_.isEmpty(chat.Title)) {\n return chat.Title;\n }\n if (chat.IsPrivate) {\n const otherUser = _.find(chat.Audience || [], u => {\n return u.userId !== this.props.user.Id;\n });\n if (otherUser) {\n return otherUser.displayName;\n }\n return null;\n }\n if (chat.userNames) {\n const names = _.without(Object.keys(chat.userNames), this.props.user.displayName);\n return names.length > 2 ? `${names[0]} & ${names.length - 1} others` : names.join(', ');\n }\n return 'no title detected';\n }\n\n getChatImage(chat) {\n if (!_.isEmpty(chat.Thumbnail)) {\n return chat.Thumbnail;\n }\n if (!_.isEmpty(chat.Image)) {\n return chat.Image;\n }\n if (chat.IsPrivate) {\n const otherUser = _.find(chat.Audience || [], u => {\n return u.userId !== this.props.user.Id;\n });\n if (otherUser) {\n return otherUser.profilePic;\n }\n }\n return null;\n }\n\n getTimeText(input) {\n const gug = moment(input).local();\n if (\n gug.isBefore(\n moment()\n .local()\n .startOf('d'),\n )\n ) {\n return gug.format('D MMM');\n }\n return gug.format('h:mma');\n }\n\n getLastMessage(chat) {\n if (_.isUndefined(chat.lastMessage)) {\n if (chat.IsPrivate) {\n return '';\n }\n return `New ${values.entityName}`;\n }\n if (typeof chat.lastMessage === 'string') {\n return chat.lastMessage;\n }\n // TODO recognise user name of last message\n return chat.lastMessage.text;\n }\n\n showMore() {\n if (this._isMounted) {\n this.setState({ showMore: true });\n }\n setTimeout(() => {\n this.createDataSource(this.props);\n }, 50);\n }\n\n createDataSource(nextProps) {\n const chatsToUse = _.filter(nextProps.groups, chat => {\n return !_.isEmpty(chat) && !chat.deleted && !chat.Deleted && chat != null;\n });\n\n const messages = _.orderBy(_.orderBy(chatsToUse, 'Changed', 'desc'), 'IsPrivate', 'desc');\n\n const chats = [...(!this.state.showMore ? _.take(messages, 3) : messages)];\n // const chats = [\n // ...messages,\n // !this.state.showMore && chatsToUse.length > 3 ? { type: 'more' } : {}\n // ];\n\n if (!_.isEmpty(chats[0]) && chats[0] != null) {\n chats[0].first = true;\n\n const firstPrivate = _.find(chats, c => {\n return c.IsPrivate;\n });\n if (firstPrivate) {\n firstPrivate.firstPrivate = true;\n }\n }\n\n let invites = nextProps.invites;\n if (invites == null) {\n invites = [];\n }\n if (this._isMounted) {\n this.setState({\n dataSource: chats,\n invites,\n });\n }\n }\n\n getEmptyStateText() {\n if (this.props.options && !_.isEmpty(this.props.options.EmptyText)) {\n return this.props.options.EmptyText;\n }\n return CONST_STRINGS.EMPTY_GROUPS;\n }\n\n shouldRenderPublicGroups() {\n if (!this.props.circleAllowPublicCircles) {\n return false;\n }\n if (_.isEmpty(this.state.publicGroups)) {\n return false;\n }\n if (this.props.user.category === 'family') {\n return false;\n }\n return true;\n }\n\n renderReply(chat) {\n if (chat.lastUserKey === this.props.user.uid) {\n return <Icon name=\"mail-reply\" type=\"font-awesome\" iconStyle={styles.chatReplyIcon} />;\n }\n return null;\n }\n\n renderUnreadCounter(counter) {\n if (_.isUndefined(counter) || counter < 1) {\n return null;\n }\n return (\n <View style={styles.counter}>\n <Text style={styles.counterText}>{counter}</Text>\n </View>\n );\n }\n\n renderChat(chat) {\n if (_.isEmpty(chat) || chat.deleted || chat == null) {\n return null;\n }\n\n const chatName = this.getChatName(chat);\n const chatImage = this.getChatImage(chat);\n const unreadCounter = (chat.Unread && chat.Unread[this.props.user.Id]) || 0;\n\n return (\n <View key={`chat${chat.Id}`} style={[chat.first && _.isEmpty(this.state.invites) && { marginTop: 8 }]}>\n {chat.firstPrivate && (\n <TextStyle type=\"pageHeading\" style={styles.dmHeading}>\n Direct Messages\n </TextStyle>\n )}\n <TouchableOpacity activeOpacity={0.9} onPress={this.onPressChat.bind(this, chat)}>\n <View\n style={[\n styles.listItem,\n // extraSeparation && styles.extraSeparation\n ]}\n >\n <ProfilePic Diameter={40} name={chatName} ProfilePic={chatImage} />\n <View style={styles.listItemTextContainer}>\n <View style={styles.rowReverse}>\n <Text style={[styles.chatTimeStamp, !!unreadCounter && { color: TEXT_DARK, fontFamily: 'sf-bold' }]}>\n {this.getTimeText(chat.Changed)}\n </Text>\n <View style={styles.fill}>\n <Text style={[styles.chatUserName, !!unreadCounter && styles.chatTextBold]} numberOfLines={1}>\n {chatName}\n </Text>\n </View>\n </View>\n <View style={styles.rowReverse}>\n {this.renderUnreadCounter(unreadCounter)}\n <View style={styles.fill}>\n <Text style={[styles.chatLastMessage, !!unreadCounter && {}]} numberOfLines={1}>\n {this.getLastMessage(chat)}\n </Text>\n </View>\n </View>\n </View>\n </View>\n </TouchableOpacity>\n </View>\n );\n }\n\n renderInvites() {\n const source = _.filter(this.state.invites, item => {\n return !item.Deleted && !item.Rejected;\n });\n\n return source.map((invite, index) => {\n if (invite != null) {\n return (\n <View key={invite.Id}>\n <GroupInvite invite={invite} event={invite} index={index} key={invite.Id} showHeader />\n </View>\n );\n }\n return null;\n });\n }\n\n renderPublicGroups() {\n if (!this.shouldRenderPublicGroups()) {\n return null;\n }\n return this.state.publicGroups.map((group, index) => {\n if (!group) {\n return null;\n }\n return (\n <View key={group.Id}>\n <PublicGroup group={group} index={index} key={group.Id} showHeader onClose={this.onClosePublicGroup.bind(this, group)} />\n </View>\n );\n });\n }\n\n renderListHeader() {\n if (!this.props.ListHeaderComponent && ((_.isEmpty(this.state.invites) && !this.shouldRenderPublicGroups()) || this.props.isWidget)) {\n return null;\n }\n let internalHeader = null;\n if (!_.isEmpty(this.state.invites) || this.shouldRenderPublicGroups()) {\n internalHeader = (\n <ScrollView horizontal>\n {!_.isEmpty(this.state.invites) && this.renderInvites()}\n {this.renderPublicGroups()}\n </ScrollView>\n );\n }\n return (\n <View>\n {this.props.ListHeaderComponent}\n {internalHeader}\n </View>\n );\n }\n\n renderEmptyList() {\n if (this.props.isLoading) return <EmptyStateMain title=\"Loading\" style={{ height: 180, paddingTop: 16, marginHorizontal: 16 }} />;\n if (this.props.isWidget)\n return <EmptyStateMain title={this.getEmptyStateText()} style={{ height: 180, paddingTop: 16, marginHorizontal: 16 }} />;\n return <EmptyStateMain title={this.getEmptyStateText()} style={{ marginHorizontal: 16, marginTop: 16 }} />;\n }\n\n render() {\n const dataSource = this.props.limit ? this.state.dataSource.slice(0, this.props.limit) : this.state.dataSource;\n\n return (\n <View style={[styles.container, !this.props.isWidget && styles.mainContainer]}>\n <FlatList\n keyboardShouldPersistTaps=\"always\"\n style={styles.fill}\n data={dataSource}\n ListEmptyComponent={this.renderEmptyList()}\n ListHeaderComponent={this.renderListHeader()}\n keyExtractor={item => item.Id}\n renderItem={({ item, index }) => this.renderChat(item, index)}\n ListFooterComponent={!this.props.isWidget && <View style={{ height: 15 }} />}\n />\n </View>\n );\n }\n}\n\nconst styles = {\n mainContainer: {\n paddingVertical: 16,\n },\n card: {\n position: 'relative',\n paddingHorizontal: 0,\n paddingVertical: 16,\n marginBottom: 8,\n },\n sectionTitleContainer: {\n height: 30,\n paddingHorizontal: 16,\n paddingBottom: 8,\n justifyContent: 'center',\n },\n sectionTitle: {\n fontSize: 16,\n fontFamily: 'sf-semibold',\n color: TEXT_DARK,\n },\n container: {\n flex: 1,\n position: 'relative',\n },\n rowReverse: {\n flexDirection: 'row-reverse',\n alignItems: 'center',\n },\n fill: {\n flex: 1,\n backgroundColor: '#fff',\n },\n listItem: {\n backgroundColor: '#fff',\n paddingHorizontal: 15,\n paddingBottom: 16,\n justifyContent: 'flex-start',\n flexDirection: 'row',\n position: 'relative',\n },\n extraSeparation: {\n marginTop: 15,\n },\n unreadMarker: {\n backgroundColor: 'transparent',\n marginTop: 35,\n width: 10,\n height: 10,\n borderRadius: 5,\n },\n listItemTextContainer: {\n flex: 1,\n marginLeft: 10,\n },\n chatUserName: {\n fontSize: 16,\n fontFamily: 'sf-bold',\n color: TEXT_DARK,\n },\n chatLastMessageContainer: {\n flexDirection: 'row',\n justifyContent: 'flex-start',\n paddingRight: 20,\n },\n chatReplyIcon: {\n fontSize: 18,\n fontFamily: 'sf-regular',\n color: TEXT_MID,\n marginRight: 5,\n },\n chatLastMessage: {\n fontSize: 13,\n fontFamily: 'sf-medium',\n color: TEXT_LIGHT,\n marginRight: 5,\n },\n chatTextBold: {\n fontFamily: 'sf-bold',\n },\n chatTimeStamp: {\n fontSize: 10,\n fontFamily: 'sf-semibold',\n color: TEXT_LIGHT,\n },\n addButtonContainer: {\n position: 'absolute',\n right: 20,\n bottom: 20,\n },\n addButton: {\n left: 0,\n width: 45,\n height: 45,\n },\n counter: {\n borderRadius: 10,\n height: 20,\n justifyContent: 'center',\n minWidth: 20,\n paddingHorizontal: 4,\n backgroundColor: COLOUR_GREEN,\n },\n counterText: {\n color: '#fff',\n fontSize: 12,\n fontFamily: 'sf-semibold',\n textAlign: 'center',\n },\n dmHeading: {\n // paddingHorizontal: 16,\n // paddingVertical: 8,\n padding: 16,\n },\n};\n\nconst mapStateToProps = state => {\n const circles = state[values.reducerKey];\n const { user } = state;\n\n return {\n groups: circles.list,\n invites: circles.invites,\n unreadCount: circles && circles.unreadCount ? circles.unreadCount : 0,\n user,\n colourBrandingMain: getMainBrandingColourFromState(state),\n circleAllowPublicCircles: getSiteSettingFromState(state, values.allowPublicKey),\n };\n};\n\nexport default connect(mapStateToProps, { clearGroupCounter })(ChatList);\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Component","View","TouchableOpacity","Text","FlatList","ScrollView","connect","moment","_","Icon","ProfilePic","EmptyStateMain","TextStyle","NavigationService","TEXT_DARK","TEXT_MID","TEXT_LIGHT","COLOUR_GREEN","getMainBrandingColourFromState","getSiteSettingFromState","clearGroupCounter","GroupInvite","CONST_STRINGS","PublicGroup","values","ChatList","constructor","_isMounted","state","showMore","dataSource","invites","publicGroups","componentDidMount","createDataSource","props","setState","UNSAFE_componentWillReceiveProps","nextProps","groups","setTimeout","shouldComponentUpdate","nextState","componentWillUnmount","onPressChat","group","Id","user","uid","navigate","screenCircleChat","chat","onPressBack","goBack","onClosePublicGroup","joined","index","indexOf","splice","newPublicGroups","getChatName","isEmpty","Title","IsPrivate","otherUser","find","Audience","u","userId","displayName","userNames","names","without","Object","keys","length","join","getChatImage","Thumbnail","Image","profilePic","getTimeText","input","gug","local","isBefore","startOf","format","getLastMessage","lastMessage","entityName","text","deleted","chatsToUse","filter","Deleted","messages","orderBy","chats","take","first","getEmptyStateText","options","EmptyText","EMPTY_GROUPS","shouldRenderPublicGroups","circleAllowPublicCircles","category","renderPublicGroupsHeader","createElement","style","styles","publicGroupsHeaderContainer","type","publicGroupsTitle","publicGroupsHelper","renderReply","lastUserKey","name","iconStyle","chatReplyIcon","renderUnreadCounter","counter","isUndefined","counterText","renderChat","chatName","chatImage","unreadCounter","Unread","key","marginTop","activeOpacity","onPress","bind","listItem","Diameter","listItemTextContainer","rowReverse","chatTimeStamp","color","fontFamily","Changed","fill","chatUserName","chatTextBold","numberOfLines","chatLastMessage","renderInvites","source","item","Rejected","map","invite","event","showHeader","renderPublicGroups","onClose","renderListHeader","ListHeaderComponent","isWidget","internalHeader","horizontal","showsHorizontalScrollIndicator","renderEmptyList","isLoading","title","height","paddingTop","marginHorizontal","render","limit","slice","isDataReady","container","mainContainer","keyboardShouldPersistTaps","data","ListEmptyComponent","keyExtractor","renderItem","ListFooterComponent","extraData","Fragment","paddingVertical","card","position","paddingHorizontal","marginBottom","sectionTitleContainer","paddingBottom","justifyContent","sectionTitle","fontSize","flex","flexDirection","alignItems","backgroundColor","extraSeparation","unreadMarker","width","borderRadius","marginLeft","chatLastMessageContainer","paddingRight","marginRight","addButtonContainer","right","bottom","addButton","left","minWidth","textAlign","lineHeight","mapStateToProps","circles","reducerKey","list","unreadCount","colourBrandingMain","allowPublicKey"],"sources":["ChatList.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View, TouchableOpacity, Text, FlatList, ScrollView } from 'react-native';\nimport { connect } from 'react-redux';\nimport moment from 'moment';\nimport _ from 'lodash';\nimport { Icon } from '@rneui/themed';\nimport { ProfilePic, EmptyStateMain, TextStyle } from '../common';\nimport NavigationService from '../../js/NavigationService';\nimport { TEXT_DARK, TEXT_MID, TEXT_LIGHT, COLOUR_GREEN, getMainBrandingColourFromState, getSiteSettingFromState } from '../../js';\nimport { clearGroupCounter } from '../../actions';\nimport GroupInvite from '../notifications/GroupInvite';\nimport { CONST_STRINGS } from '../../config';\nimport PublicGroup from '../groups/PublicGroup';\nimport { values } from '../../values.config';\n\nclass ChatList extends Component {\n constructor() {\n super();\n\n this._isMounted = false;\n this.state = {\n showMore: true,\n dataSource: [],\n invites: [],\n publicGroups: [],\n };\n }\n\n async componentDidMount() {\n this._isMounted = true;\n\n this.createDataSource(this.props);\n this.setState({ publicGroups: this.props.publicGroups });\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.groups !== this.props.groups) {\n setTimeout(() => {\n this.createDataSource(nextProps);\n }, 500);\n }\n if (nextProps.publicGroups !== this.props.publicGroups) {\n this.setState({\n publicGroups: nextProps.publicGroups,\n });\n }\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n return (\n nextState.dataSource !== this.state.dataSource ||\n nextState.publicGroups !== this.state.publicGroups ||\n nextState.invites !== this.state.invites\n );\n }\n\n componentWillUnmount() {\n this._isMounted = false;\n }\n\n onPressChat(group) {\n this.props.clearGroupCounter(group.Id, this.props.user.uid);\n NavigationService.navigate(values.screenCircleChat, { chat: group });\n }\n\n onPressBack() {\n NavigationService.goBack();\n }\n\n onClosePublicGroup(group, joined) {\n if (joined) {\n const index = this.state.publicGroups.indexOf(group);\n if (index > -1) {\n this.state.publicGroups.splice(index, 1);\n const newPublicGroups = this.state.publicGroups;\n if (this._isMounted) {\n this.setState({\n publicGroups: newPublicGroups,\n });\n }\n }\n }\n }\n\n getChatName(chat) {\n if (!_.isEmpty(chat.Title)) {\n return chat.Title;\n }\n if (chat.IsPrivate) {\n const otherUser = _.find(chat.Audience || [], u => {\n return u.userId !== this.props.user.Id;\n });\n if (otherUser) {\n return otherUser.displayName;\n }\n return null;\n }\n if (chat.userNames) {\n const names = _.without(Object.keys(chat.userNames), this.props.user.displayName);\n return names.length > 2 ? `${names[0]} & ${names.length - 1} others` : names.join(', ');\n }\n return 'no title detected';\n }\n\n getChatImage(chat) {\n if (!_.isEmpty(chat.Thumbnail)) {\n return chat.Thumbnail;\n }\n if (!_.isEmpty(chat.Image)) {\n return chat.Image;\n }\n if (chat.IsPrivate) {\n const otherUser = _.find(chat.Audience || [], u => {\n return u.userId !== this.props.user.Id;\n });\n if (otherUser) {\n return otherUser.profilePic;\n }\n }\n return null;\n }\n\n getTimeText(input) {\n const gug = moment(input).local();\n if (\n gug.isBefore(\n moment()\n .local()\n .startOf('d'),\n )\n ) {\n return gug.format('D MMM');\n }\n return gug.format('h:mma');\n }\n\n getLastMessage(chat) {\n if (!chat.lastMessage) {\n if (chat.IsPrivate) {\n return '';\n }\n return `New ${values.entityName}`;\n }\n if (typeof chat.lastMessage === 'string') {\n return chat.lastMessage;\n }\n // Handle deleted messages or missing text\n if (!chat.lastMessage.text) {\n return chat.lastMessage.deleted ? '[Message deleted]' : '';\n }\n // TODO recognise user name of last message\n return chat.lastMessage.text;\n }\n\n showMore() {\n if (this._isMounted) {\n this.setState({ showMore: true });\n }\n setTimeout(() => {\n this.createDataSource(this.props);\n }, 50);\n }\n\n createDataSource(nextProps) {\n const chatsToUse = _.filter(nextProps.groups, chat => {\n return !_.isEmpty(chat) && !chat.deleted && !chat.Deleted && chat != null && !chat.IsPrivate;\n });\n\n const messages = _.orderBy(chatsToUse, 'Changed', 'desc');\n\n const chats = [...(!this.state.showMore ? _.take(messages, 3) : messages)];\n // const chats = [\n // ...messages,\n // !this.state.showMore && chatsToUse.length > 3 ? { type: 'more' } : {}\n // ];\n\n if (!_.isEmpty(chats[0]) && chats[0] != null) {\n chats[0].first = true;\n }\n\n let invites = nextProps.invites;\n if (invites == null) {\n invites = [];\n }\n if (this._isMounted) {\n this.setState({\n dataSource: chats,\n invites,\n });\n }\n }\n\n getEmptyStateText() {\n if (this.props.options && !_.isEmpty(this.props.options.EmptyText)) {\n return this.props.options.EmptyText;\n }\n return CONST_STRINGS.EMPTY_GROUPS;\n }\n\n shouldRenderPublicGroups() {\n if (!this.props.circleAllowPublicCircles) {\n return false;\n }\n if (_.isEmpty(this.state.publicGroups)) {\n return false;\n }\n if (this.props.user.category === 'family') {\n return false;\n }\n return true;\n }\n\n renderPublicGroupsHeader() {\n if (!this.shouldRenderPublicGroups()) {\n return null;\n }\n return (\n <View style={styles.publicGroupsHeaderContainer}>\n <TextStyle type=\"label\" style={styles.publicGroupsTitle}>\n Groups You Can Join\n </TextStyle>\n <TextStyle type=\"body\" style={styles.publicGroupsHelper}>\n Any member of your community can join these groups. Tap any group to join.\n </TextStyle>\n </View>\n );\n }\n\n renderReply(chat) {\n if (chat.lastUserKey === this.props.user.uid) {\n return <Icon name=\"mail-reply\" type=\"font-awesome\" iconStyle={styles.chatReplyIcon} />;\n }\n return null;\n }\n\n renderUnreadCounter(counter) {\n if (_.isUndefined(counter) || counter < 1) {\n return null;\n }\n return (\n <View style={styles.counter}>\n <Text style={styles.counterText}>{counter}</Text>\n </View>\n );\n }\n\n renderChat(chat) {\n if (_.isEmpty(chat) || chat.deleted || chat == null) {\n return null;\n }\n\n const chatName = this.getChatName(chat);\n const chatImage = this.getChatImage(chat);\n const unreadCounter = (chat.Unread && chat.Unread[this.props.user.Id]) || 0;\n\n return (\n <View key={`chat${chat.Id}`} style={[chat.first && _.isEmpty(this.state.invites) && { marginTop: 8 }]}>\n <TouchableOpacity activeOpacity={0.9} onPress={this.onPressChat.bind(this, chat)}>\n <View\n style={[\n styles.listItem,\n // extraSeparation && styles.extraSeparation\n ]}\n >\n <ProfilePic Diameter={40} name={chatName} ProfilePic={chatImage} />\n <View style={styles.listItemTextContainer}>\n <View style={styles.rowReverse}>\n <Text style={[styles.chatTimeStamp, !!unreadCounter && { color: TEXT_DARK, fontFamily: 'sf-bold' }]}>\n {this.getTimeText(chat.Changed)}\n </Text>\n <View style={styles.fill}>\n <Text style={[styles.chatUserName, !!unreadCounter && styles.chatTextBold]} numberOfLines={1}>\n {chatName}\n </Text>\n </View>\n </View>\n <View style={styles.rowReverse}>\n {this.renderUnreadCounter(unreadCounter)}\n <View style={styles.fill}>\n <Text style={[styles.chatLastMessage, !!unreadCounter && {}]} numberOfLines={1}>\n {this.getLastMessage(chat)}\n </Text>\n </View>\n </View>\n </View>\n </View>\n </TouchableOpacity>\n </View>\n );\n }\n\n renderInvites() {\n const source = _.filter(this.state.invites, item => {\n return !item.Deleted && !item.Rejected;\n });\n\n return source.map((invite, index) => {\n if (invite != null) {\n return (\n <View key={invite.Id}>\n <GroupInvite invite={invite} event={invite} index={index} key={invite.Id} showHeader />\n </View>\n );\n }\n return null;\n });\n }\n\n renderPublicGroups() {\n if (!this.shouldRenderPublicGroups()) {\n return null;\n }\n return this.state.publicGroups.map((group, index) => {\n if (!group) {\n return null;\n }\n return (\n <View key={group.Id}>\n <PublicGroup group={group} index={index} key={group.Id} showHeader onClose={this.onClosePublicGroup.bind(this, group)} />\n </View>\n );\n });\n }\n\n renderListHeader() {\n if (!this.props.ListHeaderComponent && ((_.isEmpty(this.state.invites) && !this.shouldRenderPublicGroups()) || this.props.isWidget)) {\n return null;\n }\n let internalHeader = null;\n if (!_.isEmpty(this.state.invites) || this.shouldRenderPublicGroups()) {\n internalHeader = (\n <View>\n {this.renderPublicGroupsHeader()}\n <ScrollView horizontal showsHorizontalScrollIndicator={false}>\n {!_.isEmpty(this.state.invites) && this.renderInvites()}\n {this.renderPublicGroups()}\n </ScrollView>\n </View>\n );\n }\n return (\n <View>\n {this.props.ListHeaderComponent}\n {internalHeader}\n </View>\n );\n }\n\n renderEmptyList() {\n if (this.props.isLoading) return <EmptyStateMain title=\"Loading\" style={{ height: 180, paddingTop: 16, marginHorizontal: 16 }} />;\n if (this.props.isWidget)\n return <EmptyStateMain title={this.getEmptyStateText()} style={{ height: 180, paddingTop: 16, marginHorizontal: 16 }} />;\n return <EmptyStateMain title={this.getEmptyStateText()} style={{ marginHorizontal: 16, marginTop: 16 }} />;\n }\n\n render() {\n const dataSource = this.props.limit ? this.state.dataSource.slice(0, this.props.limit) : this.state.dataSource;\n const isDataReady = !_.isEmpty(this.state.dataSource);\n\n return (\n <View style={[styles.container, !this.props.isWidget && styles.mainContainer]}>\n {isDataReady && (\n <FlatList\n keyboardShouldPersistTaps=\"always\"\n style={styles.fill}\n data={dataSource}\n ListEmptyComponent={this.renderEmptyList()}\n ListHeaderComponent={this.renderListHeader()}\n keyExtractor={item => item.Id}\n renderItem={({ item, index }) => this.renderChat(item, index)}\n ListFooterComponent={!this.props.isWidget && <View style={{ height: 15 }} />}\n extraData={this.state}\n />\n )}\n {!isDataReady && (\n <>\n {this.renderListHeader()}\n {this.renderEmptyList()}\n </>\n )}\n </View>\n );\n }\n}\n\nconst styles = {\n mainContainer: {\n paddingVertical: 16,\n },\n card: {\n position: 'relative',\n paddingHorizontal: 0,\n paddingVertical: 16,\n marginBottom: 8,\n },\n sectionTitleContainer: {\n height: 30,\n paddingHorizontal: 16,\n paddingBottom: 8,\n justifyContent: 'center',\n },\n sectionTitle: {\n fontSize: 16,\n fontFamily: 'sf-semibold',\n color: TEXT_DARK,\n },\n container: {\n flex: 1,\n position: 'relative',\n },\n rowReverse: {\n flexDirection: 'row-reverse',\n alignItems: 'center',\n },\n fill: {\n flex: 1,\n backgroundColor: '#fff',\n },\n listItem: {\n backgroundColor: '#fff',\n paddingHorizontal: 15,\n paddingBottom: 16,\n justifyContent: 'flex-start',\n flexDirection: 'row',\n position: 'relative',\n },\n extraSeparation: {\n marginTop: 15,\n },\n unreadMarker: {\n backgroundColor: 'transparent',\n marginTop: 35,\n width: 10,\n height: 10,\n borderRadius: 5,\n },\n listItemTextContainer: {\n flex: 1,\n marginLeft: 10,\n },\n chatUserName: {\n fontSize: 16,\n fontFamily: 'sf-bold',\n color: TEXT_DARK,\n },\n chatLastMessageContainer: {\n flexDirection: 'row',\n justifyContent: 'flex-start',\n paddingRight: 20,\n },\n chatReplyIcon: {\n fontSize: 18,\n fontFamily: 'sf-regular',\n color: TEXT_MID,\n marginRight: 5,\n },\n chatLastMessage: {\n fontSize: 13,\n fontFamily: 'sf-medium',\n color: TEXT_LIGHT,\n marginRight: 5,\n },\n chatTextBold: {\n fontFamily: 'sf-bold',\n },\n chatTimeStamp: {\n fontSize: 10,\n fontFamily: 'sf-semibold',\n color: TEXT_LIGHT,\n },\n addButtonContainer: {\n position: 'absolute',\n right: 20,\n bottom: 20,\n },\n addButton: {\n left: 0,\n width: 45,\n height: 45,\n },\n counter: {\n borderRadius: 10,\n height: 20,\n justifyContent: 'center',\n minWidth: 20,\n paddingHorizontal: 4,\n backgroundColor: COLOUR_GREEN,\n },\n counterText: {\n color: '#fff',\n fontSize: 12,\n fontFamily: 'sf-semibold',\n textAlign: 'center',\n },\n publicGroupsHeaderContainer: {\n paddingHorizontal: 16,\n paddingTop: 16,\n paddingBottom: 8,\n },\n publicGroupsTitle: {\n marginBottom: 4,\n },\n publicGroupsHelper: {\n lineHeight: 20,\n },\n};\n\nconst mapStateToProps = state => {\n const circles = state[values.reducerKey];\n const { user } = state;\n\n return {\n groups: circles.list,\n invites: circles.invites,\n unreadCount: circles && circles.unreadCount ? circles.unreadCount : 0,\n user,\n colourBrandingMain: getMainBrandingColourFromState(state),\n circleAllowPublicCircles: getSiteSettingFromState(state, values.allowPublicKey),\n };\n};\n\nexport default connect(mapStateToProps, { clearGroupCounter })(ChatList);\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
1
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
2
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  /* eslint-disable no-param-reassign */
5
5
  import React, { PureComponent } from 'react';
@@ -1 +1 @@
1
- {"version":3,"names":["React","PureComponent","View","Text","SectionList","connect","moment","_","UserMessageListing","EmptyStateMain","LINEGREY","TEXT_BLUEGREY","CONST_STRINGS","values","ContactsList","constructor","props","_defineProperty","item","index","createElement","listItemStyle","styles","contactListItem","user","key","lastMessageAt","unread","myId","today","state","_isMounted","dataSource","componentDidMount","createDataSource","UNSAFE_componentWillReceiveProps","nextProps","componentWillUnmount","getRelationshipKey","isUndefined","relationship","section","order","siteName","relationshipTypes","users","source","sortBy","otherMessages","forEach","keyObj","id","find","title","data","isLast","push","length","setState","local","format","getEmptyStateText","options","isEmpty","EmptyText","EMPTY_PEOPLE","renderSectionHeader","style","sectionHeader","sectionHeaderTextContainer","sectionHeaderText","renderSectionFooter","sectionFooter","borderBottomColor","borderBottomWidth","renderEmptyList","isLoading","marginHorizontal","marginTop","render","sections","ListEmptyComponent","ListHeaderComponent","renderItem","keyExtractor","height","justifyContent","backgroundColor","fontFamily","color","fontSize","paddingTop","paddingBottom","paddingHorizontal","mapStateToProps","uid","siteInfo","privateList","reducerKey"],"sources":["ContactsList.js"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport React, { PureComponent } from 'react';\nimport { View, Text, SectionList } from 'react-native';\nimport { connect } from 'react-redux';\nimport moment from 'moment';\nimport _ from 'lodash';\nimport { UserMessageListing, EmptyStateMain } from '../common';\nimport { LINEGREY, TEXT_BLUEGREY } from '../../js';\nimport { CONST_STRINGS } from '../../config';\nimport { values } from '../../values.config';\n\nclass ContactsList extends PureComponent {\n constructor(props) {\n super(props);\n this._isMounted = false;\n this.state = {\n dataSource: [],\n };\n }\n\n async componentDidMount() {\n this._isMounted = true;\n this.createDataSource(this.props);\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.createDataSource(nextProps);\n }\n\n componentWillUnmount() {\n this._isMounted = false;\n }\n\n getRelationshipKey(user) {\n if (_.isUndefined(user.relationship)) {\n if (user.section === 'Others') {\n return { key: 'Others', order: 3 };\n }\n return { key: this.props.siteName, order: 2 };\n }\n\n if (user.relationship === 'Friend') {\n return { key: 'Friends', order: 1 };\n }\n return { key: 'Family', order: 0 };\n }\n\n createDataSource(props) {\n const relationshipTypes = {};\n const users = _.isUndefined(props.source) ? [] : props.source;\n\n // Build datasource ordered by relationship type\n _.sortBy([...users, ...this.props.otherMessages], 'displayName').forEach(user => {\n const keyObj = this.getRelationshipKey(user);\n user.section = keyObj.key;\n user.key = user.id;\n\n if (!_.find(relationshipTypes, { title: keyObj.key })) {\n relationshipTypes[keyObj.key] = {\n title: keyObj.key,\n order: keyObj.order,\n data: [user],\n isLast: false,\n };\n } else {\n relationshipTypes[keyObj.key].data.push(user);\n }\n });\n const dataSource = _.sortBy(_.values(relationshipTypes), 'order');\n if (dataSource.length > 0) dataSource[dataSource.length - 1].isLast = true;\n\n if (this._isMounted) {\n this.setState({\n dataSource,\n today: moment()\n .local()\n .format('D MMM YYYY'),\n });\n }\n }\n\n getEmptyStateText() {\n if (this.props.options && !_.isEmpty(this.props.options.EmptyText)) {\n return this.props.options.EmptyText;\n }\n return CONST_STRINGS.EMPTY_PEOPLE;\n }\n\n renderSectionHeader({ section }) {\n if (_.isEmpty(section.title)) return null;\n return (\n <View style={styles.sectionHeader}>\n <View style={styles.sectionHeaderTextContainer}>\n <Text style={styles.sectionHeaderText}>{section.title}</Text>\n </View>\n </View>\n );\n }\n\n renderSectionFooter({ section }) {\n return <View style={[styles.sectionFooter, !section.isLast && { borderBottomColor: LINEGREY, borderBottomWidth: 1 }]} />;\n }\n\n renderItem = ({ item, index }) => {\n return (\n <UserMessageListing\n listItemStyle={styles.contactListItem}\n user={item}\n key={index + item.lastMessageAt + item.unread}\n myId={this.props.myId}\n today={this.state.today}\n />\n );\n };\n\n renderEmptyList() {\n return this.props.isLoading ? null : (\n <EmptyStateMain title={this.getEmptyStateText()} style={{ marginHorizontal: 16, marginTop: 16 }} />\n );\n }\n\n render() {\n return (\n <SectionList\n sections={this.state.dataSource}\n ListEmptyComponent={this.renderEmptyList()}\n ListHeaderComponent={this.props.ListHeaderComponent}\n renderItem={this.renderItem}\n renderSectionHeader={this.renderSectionHeader}\n renderSectionFooter={this.renderSectionFooter}\n keyExtractor={item => item.key}\n />\n );\n }\n}\n\nconst styles = {\n sectionHeader: {\n height: 35,\n justifyContent: 'center',\n backgroundColor: 'rgba(255, 255, 255, 0.8)',\n },\n sectionFooter: {\n marginTop: 10,\n marginHorizontal: 19,\n },\n sectionHeaderTextContainer: {\n marginHorizontal: 19,\n },\n sectionHeaderText: {\n fontFamily: 'sf-semibold',\n color: TEXT_BLUEGREY,\n fontSize: 17,\n },\n contactListItem: {\n paddingTop: 10,\n paddingBottom: 10,\n paddingHorizontal: 20,\n },\n};\n\nconst mapStateToProps = state => ({\n myId: state.user.uid,\n siteName: state.user.siteInfo ? state.user.siteInfo.siteName : '',\n privateList: state[values.reducerKey].privateList,\n});\n\nexport default connect(mapStateToProps, {})(ContactsList);\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","PureComponent","View","Text","SectionList","connect","moment","_","UserMessageListing","EmptyStateMain","LINEGREY","TEXT_BLUEGREY","CONST_STRINGS","values","ContactsList","constructor","props","_defineProperty","item","index","createElement","listItemStyle","styles","contactListItem","user","key","lastMessageAt","unread","myId","today","state","_isMounted","dataSource","componentDidMount","createDataSource","UNSAFE_componentWillReceiveProps","nextProps","componentWillUnmount","getRelationshipKey","isUndefined","relationship","section","order","siteName","relationshipTypes","users","source","sortBy","otherMessages","forEach","keyObj","id","find","title","data","isLast","push","length","setState","local","format","getEmptyStateText","options","isEmpty","EmptyText","EMPTY_PEOPLE","renderSectionHeader","style","sectionHeader","sectionHeaderTextContainer","sectionHeaderText","renderSectionFooter","sectionFooter","borderBottomColor","borderBottomWidth","renderEmptyList","isLoading","marginHorizontal","marginTop","render","sections","ListEmptyComponent","ListHeaderComponent","renderItem","keyExtractor","height","justifyContent","backgroundColor","fontFamily","color","fontSize","paddingTop","paddingBottom","paddingHorizontal","mapStateToProps","uid","siteInfo","privateList","reducerKey"],"sources":["ContactsList.js"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport React, { PureComponent } from 'react';\nimport { View, Text, SectionList } from 'react-native';\nimport { connect } from 'react-redux';\nimport moment from 'moment';\nimport _ from 'lodash';\nimport { UserMessageListing, EmptyStateMain } from '../common';\nimport { LINEGREY, TEXT_BLUEGREY } from '../../js';\nimport { CONST_STRINGS } from '../../config';\nimport { values } from '../../values.config';\n\nclass ContactsList extends PureComponent {\n constructor(props) {\n super(props);\n this._isMounted = false;\n this.state = {\n dataSource: [],\n };\n }\n\n async componentDidMount() {\n this._isMounted = true;\n this.createDataSource(this.props);\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.createDataSource(nextProps);\n }\n\n componentWillUnmount() {\n this._isMounted = false;\n }\n\n getRelationshipKey(user) {\n if (_.isUndefined(user.relationship)) {\n if (user.section === 'Others') {\n return { key: 'Others', order: 3 };\n }\n return { key: this.props.siteName, order: 2 };\n }\n\n if (user.relationship === 'Friend') {\n return { key: 'Friends', order: 1 };\n }\n return { key: 'Family', order: 0 };\n }\n\n createDataSource(props) {\n const relationshipTypes = {};\n const users = _.isUndefined(props.source) ? [] : props.source;\n\n // Build datasource ordered by relationship type\n _.sortBy([...users, ...this.props.otherMessages], 'displayName').forEach(user => {\n const keyObj = this.getRelationshipKey(user);\n user.section = keyObj.key;\n user.key = user.id;\n\n if (!_.find(relationshipTypes, { title: keyObj.key })) {\n relationshipTypes[keyObj.key] = {\n title: keyObj.key,\n order: keyObj.order,\n data: [user],\n isLast: false,\n };\n } else {\n relationshipTypes[keyObj.key].data.push(user);\n }\n });\n const dataSource = _.sortBy(_.values(relationshipTypes), 'order');\n if (dataSource.length > 0) dataSource[dataSource.length - 1].isLast = true;\n\n if (this._isMounted) {\n this.setState({\n dataSource,\n today: moment()\n .local()\n .format('D MMM YYYY'),\n });\n }\n }\n\n getEmptyStateText() {\n if (this.props.options && !_.isEmpty(this.props.options.EmptyText)) {\n return this.props.options.EmptyText;\n }\n return CONST_STRINGS.EMPTY_PEOPLE;\n }\n\n renderSectionHeader({ section }) {\n if (_.isEmpty(section.title)) return null;\n return (\n <View style={styles.sectionHeader}>\n <View style={styles.sectionHeaderTextContainer}>\n <Text style={styles.sectionHeaderText}>{section.title}</Text>\n </View>\n </View>\n );\n }\n\n renderSectionFooter({ section }) {\n return <View style={[styles.sectionFooter, !section.isLast && { borderBottomColor: LINEGREY, borderBottomWidth: 1 }]} />;\n }\n\n renderItem = ({ item, index }) => {\n return (\n <UserMessageListing\n listItemStyle={styles.contactListItem}\n user={item}\n key={index + item.lastMessageAt + item.unread}\n myId={this.props.myId}\n today={this.state.today}\n />\n );\n };\n\n renderEmptyList() {\n return this.props.isLoading ? null : (\n <EmptyStateMain title={this.getEmptyStateText()} style={{ marginHorizontal: 16, marginTop: 16 }} />\n );\n }\n\n render() {\n return (\n <SectionList\n sections={this.state.dataSource}\n ListEmptyComponent={this.renderEmptyList()}\n ListHeaderComponent={this.props.ListHeaderComponent}\n renderItem={this.renderItem}\n renderSectionHeader={this.renderSectionHeader}\n renderSectionFooter={this.renderSectionFooter}\n keyExtractor={item => item.key}\n />\n );\n }\n}\n\nconst styles = {\n sectionHeader: {\n height: 35,\n justifyContent: 'center',\n backgroundColor: 'rgba(255, 255, 255, 0.8)',\n },\n sectionFooter: {\n marginTop: 10,\n marginHorizontal: 19,\n },\n sectionHeaderTextContainer: {\n marginHorizontal: 19,\n },\n sectionHeaderText: {\n fontFamily: 'sf-semibold',\n color: TEXT_BLUEGREY,\n fontSize: 17,\n },\n contactListItem: {\n paddingTop: 10,\n paddingBottom: 10,\n paddingHorizontal: 20,\n },\n};\n\nconst mapStateToProps = state => ({\n myId: state.user.uid,\n siteName: state.user.siteInfo ? state.user.siteInfo.siteName : '',\n privateList: state[values.reducerKey].privateList,\n});\n\nexport default connect(mapStateToProps, {})(ContactsList);\n"],"mappings":";;;AAAA;AACA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,IAAI,EAAEC,IAAI,EAAEC,WAAW,QAAQ,cAAc;AACtD,SAASC,OAAO,QAAQ,aAAa;AACrC,OAAOC,MAAM,MAAM,QAAQ;AAC3B,OAAOC,CAAC,MAAM,QAAQ;AACtB,SAASC,kBAAkB,EAAEC,cAAc,QAAQ,WAAW;AAC9D,SAASC,QAAQ,EAAEC,aAAa,QAAQ,UAAU;AAClD,SAASC,aAAa,QAAQ,cAAc;AAC5C,SAASC,MAAM,QAAQ,qBAAqB;AAE5C,MAAMC,YAAY,SAASb,aAAa,CAAC;EACvCc,WAAWA,CAACC,KAAK,EAAE;IACjB,KAAK,CAACA,KAAK,CAAC;IAACC,eAAA,qBA0FF,CAAC;MAAEC,IAAI;MAAEC;IAAM,CAAC,KAAK;MAChC,oBACEnB,KAAA,CAAAoB,aAAA,CAACZ,kBAAkB;QACjBa,aAAa,EAAEC,MAAM,CAACC,eAAgB;QACtCC,IAAI,EAAEN,IAAK;QACXO,GAAG,EAAEN,KAAK,GAAGD,IAAI,CAACQ,aAAa,GAAGR,IAAI,CAACS,MAAO;QAC9CC,IAAI,EAAE,IAAI,CAACZ,KAAK,CAACY,IAAK;QACtBC,KAAK,EAAE,IAAI,CAACC,KAAK,CAACD;MAAM,CACzB,CAAC;IAEN,CAAC;IAnGC,IAAI,CAACE,UAAU,GAAG,KAAK;IACvB,IAAI,CAACD,KAAK,GAAG;MACXE,UAAU,EAAE;IACd,CAAC;EACH;EAEA,MAAMC,iBAAiBA,CAAA,EAAG;IACxB,IAAI,CAACF,UAAU,GAAG,IAAI;IACtB,IAAI,CAACG,gBAAgB,CAAC,IAAI,CAAClB,KAAK,CAAC;EACnC;EAEAmB,gCAAgCA,CAACC,SAAS,EAAE;IAC1C,IAAI,CAACF,gBAAgB,CAACE,SAAS,CAAC;EAClC;EAEAC,oBAAoBA,CAAA,EAAG;IACrB,IAAI,CAACN,UAAU,GAAG,KAAK;EACzB;EAEAO,kBAAkBA,CAACd,IAAI,EAAE;IACvB,IAAIjB,CAAC,CAACgC,WAAW,CAACf,IAAI,CAACgB,YAAY,CAAC,EAAE;MACpC,IAAIhB,IAAI,CAACiB,OAAO,KAAK,QAAQ,EAAE;QAC7B,OAAO;UAAEhB,GAAG,EAAE,QAAQ;UAAEiB,KAAK,EAAE;QAAE,CAAC;MACpC;MACA,OAAO;QAAEjB,GAAG,EAAE,IAAI,CAACT,KAAK,CAAC2B,QAAQ;QAAED,KAAK,EAAE;MAAE,CAAC;IAC/C;IAEA,IAAIlB,IAAI,CAACgB,YAAY,KAAK,QAAQ,EAAE;MAClC,OAAO;QAAEf,GAAG,EAAE,SAAS;QAAEiB,KAAK,EAAE;MAAE,CAAC;IACrC;IACA,OAAO;MAAEjB,GAAG,EAAE,QAAQ;MAAEiB,KAAK,EAAE;IAAE,CAAC;EACpC;EAEAR,gBAAgBA,CAAClB,KAAK,EAAE;IACtB,MAAM4B,iBAAiB,GAAG,CAAC,CAAC;IAC5B,MAAMC,KAAK,GAAGtC,CAAC,CAACgC,WAAW,CAACvB,KAAK,CAAC8B,MAAM,CAAC,GAAG,EAAE,GAAG9B,KAAK,CAAC8B,MAAM;;IAE7D;IACAvC,CAAC,CAACwC,MAAM,CAAC,CAAC,GAAGF,KAAK,EAAE,GAAG,IAAI,CAAC7B,KAAK,CAACgC,aAAa,CAAC,EAAE,aAAa,CAAC,CAACC,OAAO,CAACzB,IAAI,IAAI;MAC/E,MAAM0B,MAAM,GAAG,IAAI,CAACZ,kBAAkB,CAACd,IAAI,CAAC;MAC5CA,IAAI,CAACiB,OAAO,GAAGS,MAAM,CAACzB,GAAG;MACzBD,IAAI,CAACC,GAAG,GAAGD,IAAI,CAAC2B,EAAE;MAElB,IAAI,CAAC5C,CAAC,CAAC6C,IAAI,CAACR,iBAAiB,EAAE;QAAES,KAAK,EAAEH,MAAM,CAACzB;MAAI,CAAC,CAAC,EAAE;QACrDmB,iBAAiB,CAACM,MAAM,CAACzB,GAAG,CAAC,GAAG;UAC9B4B,KAAK,EAAEH,MAAM,CAACzB,GAAG;UACjBiB,KAAK,EAAEQ,MAAM,CAACR,KAAK;UACnBY,IAAI,EAAE,CAAC9B,IAAI,CAAC;UACZ+B,MAAM,EAAE;QACV,CAAC;MACH,CAAC,MAAM;QACLX,iBAAiB,CAACM,MAAM,CAACzB,GAAG,CAAC,CAAC6B,IAAI,CAACE,IAAI,CAAChC,IAAI,CAAC;MAC/C;IACF,CAAC,CAAC;IACF,MAAMQ,UAAU,GAAGzB,CAAC,CAACwC,MAAM,CAACxC,CAAC,CAACM,MAAM,CAAC+B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACjE,IAAIZ,UAAU,CAACyB,MAAM,GAAG,CAAC,EAAEzB,UAAU,CAACA,UAAU,CAACyB,MAAM,GAAG,CAAC,CAAC,CAACF,MAAM,GAAG,IAAI;IAE1E,IAAI,IAAI,CAACxB,UAAU,EAAE;MACnB,IAAI,CAAC2B,QAAQ,CAAC;QACZ1B,UAAU;QACVH,KAAK,EAAEvB,MAAM,CAAC,CAAC,CACZqD,KAAK,CAAC,CAAC,CACPC,MAAM,CAAC,YAAY;MACxB,CAAC,CAAC;IACJ;EACF;EAEAC,iBAAiBA,CAAA,EAAG;IAClB,IAAI,IAAI,CAAC7C,KAAK,CAAC8C,OAAO,IAAI,CAACvD,CAAC,CAACwD,OAAO,CAAC,IAAI,CAAC/C,KAAK,CAAC8C,OAAO,CAACE,SAAS,CAAC,EAAE;MAClE,OAAO,IAAI,CAAChD,KAAK,CAAC8C,OAAO,CAACE,SAAS;IACrC;IACA,OAAOpD,aAAa,CAACqD,YAAY;EACnC;EAEAC,mBAAmBA,CAAC;IAAEzB;EAAQ,CAAC,EAAE;IAC/B,IAAIlC,CAAC,CAACwD,OAAO,CAACtB,OAAO,CAACY,KAAK,CAAC,EAAE,OAAO,IAAI;IACzC,oBACErD,KAAA,CAAAoB,aAAA,CAAClB,IAAI;MAACiE,KAAK,EAAE7C,MAAM,CAAC8C;IAAc,gBAChCpE,KAAA,CAAAoB,aAAA,CAAClB,IAAI;MAACiE,KAAK,EAAE7C,MAAM,CAAC+C;IAA2B,gBAC7CrE,KAAA,CAAAoB,aAAA,CAACjB,IAAI;MAACgE,KAAK,EAAE7C,MAAM,CAACgD;IAAkB,GAAE7B,OAAO,CAACY,KAAY,CACxD,CACF,CAAC;EAEX;EAEAkB,mBAAmBA,CAAC;IAAE9B;EAAQ,CAAC,EAAE;IAC/B,oBAAOzC,KAAA,CAAAoB,aAAA,CAAClB,IAAI;MAACiE,KAAK,EAAE,CAAC7C,MAAM,CAACkD,aAAa,EAAE,CAAC/B,OAAO,CAACc,MAAM,IAAI;QAAEkB,iBAAiB,EAAE/D,QAAQ;QAAEgE,iBAAiB,EAAE;MAAE,CAAC;IAAE,CAAE,CAAC;EAC1H;EAcAC,eAAeA,CAAA,EAAG;IAChB,OAAO,IAAI,CAAC3D,KAAK,CAAC4D,SAAS,GAAG,IAAI,gBAChC5E,KAAA,CAAAoB,aAAA,CAACX,cAAc;MAAC4C,KAAK,EAAE,IAAI,CAACQ,iBAAiB,CAAC,CAAE;MAACM,KAAK,EAAE;QAAEU,gBAAgB,EAAE,EAAE;QAAEC,SAAS,EAAE;MAAG;IAAE,CAAE,CACnG;EACH;EAEAC,MAAMA,CAAA,EAAG;IACP,oBACE/E,KAAA,CAAAoB,aAAA,CAAChB,WAAW;MACV4E,QAAQ,EAAE,IAAI,CAAClD,KAAK,CAACE,UAAW;MAChCiD,kBAAkB,EAAE,IAAI,CAACN,eAAe,CAAC,CAAE;MAC3CO,mBAAmB,EAAE,IAAI,CAAClE,KAAK,CAACkE,mBAAoB;MACpDC,UAAU,EAAE,IAAI,CAACA,UAAW;MAC5BjB,mBAAmB,EAAE,IAAI,CAACA,mBAAoB;MAC9CK,mBAAmB,EAAE,IAAI,CAACA,mBAAoB;MAC9Ca,YAAY,EAAElE,IAAI,IAAIA,IAAI,CAACO;IAAI,CAChC,CAAC;EAEN;AACF;AAEA,MAAMH,MAAM,GAAG;EACb8C,aAAa,EAAE;IACbiB,MAAM,EAAE,EAAE;IACVC,cAAc,EAAE,QAAQ;IACxBC,eAAe,EAAE;EACnB,CAAC;EACDf,aAAa,EAAE;IACbM,SAAS,EAAE,EAAE;IACbD,gBAAgB,EAAE;EACpB,CAAC;EACDR,0BAA0B,EAAE;IAC1BQ,gBAAgB,EAAE;EACpB,CAAC;EACDP,iBAAiB,EAAE;IACjBkB,UAAU,EAAE,aAAa;IACzBC,KAAK,EAAE9E,aAAa;IACpB+E,QAAQ,EAAE;EACZ,CAAC;EACDnE,eAAe,EAAE;IACfoE,UAAU,EAAE,EAAE;IACdC,aAAa,EAAE,EAAE;IACjBC,iBAAiB,EAAE;EACrB;AACF,CAAC;AAED,MAAMC,eAAe,GAAGhE,KAAK,KAAK;EAChCF,IAAI,EAAEE,KAAK,CAACN,IAAI,CAACuE,GAAG;EACpBpD,QAAQ,EAAEb,KAAK,CAACN,IAAI,CAACwE,QAAQ,GAAGlE,KAAK,CAACN,IAAI,CAACwE,QAAQ,CAACrD,QAAQ,GAAG,EAAE;EACjEsD,WAAW,EAAEnE,KAAK,CAACjB,MAAM,CAACqF,UAAU,CAAC,CAACD;AACxC,CAAC,CAAC;AAEF,eAAe5F,OAAO,CAACyF,eAAe,EAAE,CAAC,CAAC,CAAC,CAAChF,YAAY,CAAC","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
1
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
2
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import React, { Component } from 'react';
5
5
  import { connect } from 'react-redux';
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","connect","View","Text","SectionList","withNavigationFocus","_","moment","userActions","getSite","TEXT_DARKEST","getMainBrandingColourFromState","getShadowStyle","NavigationService","Header","ProfilePic","GenericInput","KioskPeoplePage","constructor","args","_defineProperty","source","results","searchInput","lastSearchKey","isHomeTab","goBack","componentDidMount","setState","getParentRoute","getData","onChangeText","value","keyTime","valueOf","setTimeout","state","setData","getSiteUsers","props","user","site","then","res","data","searchValue","newResidents","newStaff","sortedList","sortBy","filter","u","displayName","toLowerCase","indexOf","toUpperCase","forEach","firstLetter","category","Key","Letter","Object","keys","length","Title","push","finalList","values","JSON","parse","stringify","renderHeader","createElement","leftIcon","onPressLeft","onPressBack","text","centerContent","icon","iconType","placeholder","ref","hasClear","onClear","containerStyle","marginHorizontal","marginVertical","renderSectionHeader","section","key","isEmpty","style","styles","sectionTitle","sectionLetter","backgroundColor","colourBrandingMain","sectionLetterText","renderItem","item","sectionKey","index","userContainer","userInner","Diameter","profilePic","userName","numberOfLines","renderList","row","column","paddingLeft","paddingRight","n","i","map","render","pageContainer","enableEmptySections","keyExtractor","stickySectionHeadersEnabled","sections","ListHeaderComponent","peopleTitle","initialNumToRender","flex","position","width","flexDirection","padding","paddingBottom","fontFamily","color","fontSize","sectionContainer","paddingTop","marginTop","height","borderRadius","alignItems","justifyContent","marginLeft","textAlign","lineHeight","userContainer0","userContainer1","userContainer2","userContainer3","paddingHorizontal","userLocation","mapStateToProps"],"sources":["KioskPeoplePage.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { connect } from 'react-redux';\nimport { View, Text, SectionList } from 'react-native';\nimport { withNavigationFocus } from 'react-navigation';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport { userActions } from '../../webapi';\nimport { getSite, TEXT_DARKEST, getMainBrandingColourFromState, getShadowStyle } from '../../js';\nimport NavigationService from '../../js/NavigationService';\nimport { Header, ProfilePic, GenericInput } from '../common';\n\nclass KioskPeoplePage extends Component {\n state = {\n source: [],\n results: [],\n searchInput: '',\n lastSearchKey: 0,\n isHomeTab: false,\n };\n\n componentDidMount() {\n this.setState({ isHomeTab: !NavigationService.getParentRoute() });\n this.getData();\n }\n\n onChangeText(value) {\n const keyTime = moment().valueOf();\n this.setState({\n searchInput: value,\n lastSearchKey: keyTime,\n results: [],\n });\n setTimeout(() => {\n if (this.state.lastSearchKey === keyTime) {\n this.setData(this.state.source, value);\n }\n }, 500);\n }\n\n getData() {\n userActions.getSiteUsers(getSite(this.props.user.site)).then(res => {\n this.setState({\n source: res.data,\n });\n this.setData(res.data, this.state.searchInput);\n });\n }\n\n setData(source, searchValue) {\n const newResidents = {};\n const newStaff = {};\n\n const sortedList = _.sortBy(\n _.filter(source, u => {\n return u.displayName.toLowerCase().indexOf(searchValue) > -1;\n }),\n u => {\n return u.displayName.toUpperCase();\n },\n );\n\n sortedList.forEach(u => {\n const firstLetter = u.displayName[0].toUpperCase();\n if (u.category === 'resident') {\n if (!newResidents[firstLetter]) {\n newResidents[firstLetter] = {\n Key: `R${firstLetter}`,\n Letter: firstLetter,\n data: [],\n };\n }\n if (Object.keys(newResidents).length === 1) {\n newResidents[firstLetter].Title = 'Residents';\n }\n newResidents[firstLetter].data.push(u);\n } else if (u.category === 'staff') {\n if (!newStaff[firstLetter]) {\n newStaff[firstLetter] = {\n Key: `S${firstLetter}`,\n Letter: firstLetter,\n data: [],\n };\n }\n if (Object.keys(newStaff).length === 1) {\n newStaff[firstLetter].Title = 'Staff';\n }\n newStaff[firstLetter].data.push(u);\n }\n });\n\n const finalList = [..._.values(newResidents), ..._.values(newStaff)];\n\n this.setState({\n results: JSON.parse(JSON.stringify(finalList)),\n });\n }\n\n onPressBack = () => {\n NavigationService.goBack();\n };\n\n renderHeader() {\n if (!this.state.isHomeTab) return <Header leftIcon=\"angle-left\" onPressLeft={this.onPressBack} text={'People'} />;\n\n return (\n <Header\n centerContent={\n <GenericInput\n value={this.state.searchInput}\n icon=\"Ellipse\"\n iconType=\"pl60\"\n placeholder={`Search people`}\n ref=\"searchText\"\n hasClear\n onClear={() => {\n this.onChangeText('');\n }}\n onChangeText={value => {\n this.onChangeText(value);\n }}\n containerStyle={{\n marginHorizontal: 24,\n marginVertical: 17,\n }}\n />\n }\n />\n );\n }\n\n renderSectionHeader(section) {\n return (\n <View key={section.Key}>\n {!_.isEmpty(section.Title) && <Text style={styles.sectionTitle}>{section.Title}</Text>}\n <View style={styles.section}>\n <View style={[styles.sectionLetter, { backgroundColor: this.props.colourBrandingMain }]}>\n <Text style={styles.sectionLetterText}>{section.Letter}</Text>\n </View>\n </View>\n </View>\n );\n }\n\n renderItem(item, sectionKey, index) {\n return (\n <View key={`${sectionKey}_${index}`} style={[styles.userContainer]}>\n <View style={[styles.userInner, getShadowStyle()]}>\n <ProfilePic Diameter={50} ProfilePic={item.profilePic} />\n <Text style={styles.userName} numberOfLines={2}>\n {item.displayName}\n </Text>\n {/* <Text style={styles.userLocation} numberOfLines={1}>{item.unit}</Text> */}\n </View>\n </View>\n );\n }\n\n renderList(section, index) {\n if (index !== 0) return null;\n\n return (\n <View style={styles.row} key={section.Key}>\n <View style={[styles.column, { paddingLeft: 24, paddingRight: 6 }]}>\n {_.filter(section.data, (n, i) => {\n return i % 4 === 0;\n }).map((n, i) => {\n return this.renderItem(n, section.Key, i);\n })}\n </View>\n <View style={[styles.column, { paddingLeft: 18, paddingRight: 12 }]}>\n {_.filter(section.data, (n, i) => {\n return i % 4 === 1;\n }).map((n, i) => {\n return this.renderItem(n, section.Key, i);\n })}\n </View>\n <View style={[styles.column, { paddingLeft: 12, paddingRight: 18 }]}>\n {_.filter(section.data, (n, i) => {\n return i % 4 === 2;\n }).map((n, i) => {\n return this.renderItem(n, section.Key, i);\n })}\n </View>\n <View style={[styles.column, { paddingLeft: 6, paddingRight: 24 }]}>\n {_.filter(section.data, (n, i) => {\n return i % 4 === 3;\n }).map((n, i) => {\n return this.renderItem(n, section.Key, i);\n })}\n </View>\n </View>\n );\n }\n\n render() {\n return (\n <View style={styles.pageContainer}>\n {this.renderHeader()}\n <SectionList\n enableEmptySections\n keyExtractor={item => item.Key}\n stickySectionHeadersEnabled={false}\n renderSectionHeader={({ section }) => this.renderSectionHeader(section)}\n renderItem={({ section, index }) => {\n return this.renderList(section, index);\n }}\n sections={this.state.results}\n ListHeaderComponent={<Text style={styles.peopleTitle}>People</Text>}\n initialNumToRender={15}\n />\n </View>\n );\n }\n}\n\nconst styles = {\n pageContainer: {\n flex: 1,\n position: 'relative',\n backgroundColor: '#fff',\n },\n row: {\n width: '100%',\n flexDirection: 'row',\n },\n column: {\n flex: 1,\n },\n peopleTitle: {\n padding: 24,\n paddingBottom: 12,\n fontFamily: 'sf-bold',\n color: TEXT_DARKEST,\n fontSize: 24,\n },\n sectionContainer: {\n padding: 24,\n },\n sectionTitle: {\n fontFamily: 'sf-medium',\n color: TEXT_DARKEST,\n fontSize: 20,\n paddingTop: 24,\n paddingLeft: 24,\n },\n section: {\n marginTop: 36,\n },\n sectionLetter: {\n width: 22,\n height: 22,\n borderRadius: 11,\n alignItems: 'center',\n justifyContent: 'center',\n marginLeft: 24,\n },\n sectionLetterText: {\n color: '#fff',\n fontSize: 12,\n fontFamily: 'sf-semibold',\n textAlign: 'center',\n lineHeight: 22,\n },\n userContainer: {\n width: '100%',\n height: 140,\n marginTop: 24,\n },\n userContainer0: {\n paddingLeft: 24,\n paddingRight: 6,\n },\n userContainer1: {\n paddingLeft: 18,\n paddingRight: 12,\n },\n userContainer2: {\n paddingLeft: 12,\n paddingRight: 18,\n },\n userContainer3: {\n paddingLeft: 6,\n paddingRight: 24,\n },\n userInner: {\n borderRadius: 4,\n width: '100%',\n height: '100%',\n alignItems: 'center',\n paddingTop: 32,\n paddingHorizontal: 16,\n backgroundColor: '#fff',\n },\n userName: {\n fontFamily: 'sf-semibold',\n color: TEXT_DARKEST,\n fontSize: 14,\n textAlign: 'center',\n marginTop: 4,\n },\n userLocation: {\n fontFamily: 'sf-regular',\n color: TEXT_DARKEST,\n fontSize: 13,\n textAlign: 'center',\n marginTop: 4,\n },\n};\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n user: state.user,\n };\n};\n\nexport default withNavigationFocus(connect(mapStateToProps, {})(KioskPeoplePage));\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Component","connect","View","Text","SectionList","withNavigationFocus","_","moment","userActions","getSite","TEXT_DARKEST","getMainBrandingColourFromState","getShadowStyle","NavigationService","Header","ProfilePic","GenericInput","KioskPeoplePage","constructor","args","_defineProperty","source","results","searchInput","lastSearchKey","isHomeTab","goBack","componentDidMount","setState","getParentRoute","getData","onChangeText","value","keyTime","valueOf","setTimeout","state","setData","getSiteUsers","props","user","site","then","res","data","searchValue","newResidents","newStaff","sortedList","sortBy","filter","u","displayName","toLowerCase","indexOf","toUpperCase","forEach","firstLetter","category","Key","Letter","Object","keys","length","Title","push","finalList","values","JSON","parse","stringify","renderHeader","createElement","leftIcon","onPressLeft","onPressBack","text","centerContent","icon","iconType","placeholder","ref","hasClear","onClear","containerStyle","marginHorizontal","marginVertical","renderSectionHeader","section","key","isEmpty","style","styles","sectionTitle","sectionLetter","backgroundColor","colourBrandingMain","sectionLetterText","renderItem","item","sectionKey","index","userContainer","userInner","Diameter","profilePic","userName","numberOfLines","renderList","row","column","paddingLeft","paddingRight","n","i","map","render","pageContainer","enableEmptySections","keyExtractor","stickySectionHeadersEnabled","sections","ListHeaderComponent","peopleTitle","initialNumToRender","flex","position","width","flexDirection","padding","paddingBottom","fontFamily","color","fontSize","sectionContainer","paddingTop","marginTop","height","borderRadius","alignItems","justifyContent","marginLeft","textAlign","lineHeight","userContainer0","userContainer1","userContainer2","userContainer3","paddingHorizontal","userLocation","mapStateToProps"],"sources":["KioskPeoplePage.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { connect } from 'react-redux';\nimport { View, Text, SectionList } from 'react-native';\nimport { withNavigationFocus } from 'react-navigation';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport { userActions } from '../../webapi';\nimport { getSite, TEXT_DARKEST, getMainBrandingColourFromState, getShadowStyle } from '../../js';\nimport NavigationService from '../../js/NavigationService';\nimport { Header, ProfilePic, GenericInput } from '../common';\n\nclass KioskPeoplePage extends Component {\n state = {\n source: [],\n results: [],\n searchInput: '',\n lastSearchKey: 0,\n isHomeTab: false,\n };\n\n componentDidMount() {\n this.setState({ isHomeTab: !NavigationService.getParentRoute() });\n this.getData();\n }\n\n onChangeText(value) {\n const keyTime = moment().valueOf();\n this.setState({\n searchInput: value,\n lastSearchKey: keyTime,\n results: [],\n });\n setTimeout(() => {\n if (this.state.lastSearchKey === keyTime) {\n this.setData(this.state.source, value);\n }\n }, 500);\n }\n\n getData() {\n userActions.getSiteUsers(getSite(this.props.user.site)).then(res => {\n this.setState({\n source: res.data,\n });\n this.setData(res.data, this.state.searchInput);\n });\n }\n\n setData(source, searchValue) {\n const newResidents = {};\n const newStaff = {};\n\n const sortedList = _.sortBy(\n _.filter(source, u => {\n return u.displayName.toLowerCase().indexOf(searchValue) > -1;\n }),\n u => {\n return u.displayName.toUpperCase();\n },\n );\n\n sortedList.forEach(u => {\n const firstLetter = u.displayName[0].toUpperCase();\n if (u.category === 'resident') {\n if (!newResidents[firstLetter]) {\n newResidents[firstLetter] = {\n Key: `R${firstLetter}`,\n Letter: firstLetter,\n data: [],\n };\n }\n if (Object.keys(newResidents).length === 1) {\n newResidents[firstLetter].Title = 'Residents';\n }\n newResidents[firstLetter].data.push(u);\n } else if (u.category === 'staff') {\n if (!newStaff[firstLetter]) {\n newStaff[firstLetter] = {\n Key: `S${firstLetter}`,\n Letter: firstLetter,\n data: [],\n };\n }\n if (Object.keys(newStaff).length === 1) {\n newStaff[firstLetter].Title = 'Staff';\n }\n newStaff[firstLetter].data.push(u);\n }\n });\n\n const finalList = [..._.values(newResidents), ..._.values(newStaff)];\n\n this.setState({\n results: JSON.parse(JSON.stringify(finalList)),\n });\n }\n\n onPressBack = () => {\n NavigationService.goBack();\n };\n\n renderHeader() {\n if (!this.state.isHomeTab) return <Header leftIcon=\"angle-left\" onPressLeft={this.onPressBack} text={'People'} />;\n\n return (\n <Header\n centerContent={\n <GenericInput\n value={this.state.searchInput}\n icon=\"Ellipse\"\n iconType=\"pl60\"\n placeholder={`Search people`}\n ref=\"searchText\"\n hasClear\n onClear={() => {\n this.onChangeText('');\n }}\n onChangeText={value => {\n this.onChangeText(value);\n }}\n containerStyle={{\n marginHorizontal: 24,\n marginVertical: 17,\n }}\n />\n }\n />\n );\n }\n\n renderSectionHeader(section) {\n return (\n <View key={section.Key}>\n {!_.isEmpty(section.Title) && <Text style={styles.sectionTitle}>{section.Title}</Text>}\n <View style={styles.section}>\n <View style={[styles.sectionLetter, { backgroundColor: this.props.colourBrandingMain }]}>\n <Text style={styles.sectionLetterText}>{section.Letter}</Text>\n </View>\n </View>\n </View>\n );\n }\n\n renderItem(item, sectionKey, index) {\n return (\n <View key={`${sectionKey}_${index}`} style={[styles.userContainer]}>\n <View style={[styles.userInner, getShadowStyle()]}>\n <ProfilePic Diameter={50} ProfilePic={item.profilePic} />\n <Text style={styles.userName} numberOfLines={2}>\n {item.displayName}\n </Text>\n {/* <Text style={styles.userLocation} numberOfLines={1}>{item.unit}</Text> */}\n </View>\n </View>\n );\n }\n\n renderList(section, index) {\n if (index !== 0) return null;\n\n return (\n <View style={styles.row} key={section.Key}>\n <View style={[styles.column, { paddingLeft: 24, paddingRight: 6 }]}>\n {_.filter(section.data, (n, i) => {\n return i % 4 === 0;\n }).map((n, i) => {\n return this.renderItem(n, section.Key, i);\n })}\n </View>\n <View style={[styles.column, { paddingLeft: 18, paddingRight: 12 }]}>\n {_.filter(section.data, (n, i) => {\n return i % 4 === 1;\n }).map((n, i) => {\n return this.renderItem(n, section.Key, i);\n })}\n </View>\n <View style={[styles.column, { paddingLeft: 12, paddingRight: 18 }]}>\n {_.filter(section.data, (n, i) => {\n return i % 4 === 2;\n }).map((n, i) => {\n return this.renderItem(n, section.Key, i);\n })}\n </View>\n <View style={[styles.column, { paddingLeft: 6, paddingRight: 24 }]}>\n {_.filter(section.data, (n, i) => {\n return i % 4 === 3;\n }).map((n, i) => {\n return this.renderItem(n, section.Key, i);\n })}\n </View>\n </View>\n );\n }\n\n render() {\n return (\n <View style={styles.pageContainer}>\n {this.renderHeader()}\n <SectionList\n enableEmptySections\n keyExtractor={item => item.Key}\n stickySectionHeadersEnabled={false}\n renderSectionHeader={({ section }) => this.renderSectionHeader(section)}\n renderItem={({ section, index }) => {\n return this.renderList(section, index);\n }}\n sections={this.state.results}\n ListHeaderComponent={<Text style={styles.peopleTitle}>People</Text>}\n initialNumToRender={15}\n />\n </View>\n );\n }\n}\n\nconst styles = {\n pageContainer: {\n flex: 1,\n position: 'relative',\n backgroundColor: '#fff',\n },\n row: {\n width: '100%',\n flexDirection: 'row',\n },\n column: {\n flex: 1,\n },\n peopleTitle: {\n padding: 24,\n paddingBottom: 12,\n fontFamily: 'sf-bold',\n color: TEXT_DARKEST,\n fontSize: 24,\n },\n sectionContainer: {\n padding: 24,\n },\n sectionTitle: {\n fontFamily: 'sf-medium',\n color: TEXT_DARKEST,\n fontSize: 20,\n paddingTop: 24,\n paddingLeft: 24,\n },\n section: {\n marginTop: 36,\n },\n sectionLetter: {\n width: 22,\n height: 22,\n borderRadius: 11,\n alignItems: 'center',\n justifyContent: 'center',\n marginLeft: 24,\n },\n sectionLetterText: {\n color: '#fff',\n fontSize: 12,\n fontFamily: 'sf-semibold',\n textAlign: 'center',\n lineHeight: 22,\n },\n userContainer: {\n width: '100%',\n height: 140,\n marginTop: 24,\n },\n userContainer0: {\n paddingLeft: 24,\n paddingRight: 6,\n },\n userContainer1: {\n paddingLeft: 18,\n paddingRight: 12,\n },\n userContainer2: {\n paddingLeft: 12,\n paddingRight: 18,\n },\n userContainer3: {\n paddingLeft: 6,\n paddingRight: 24,\n },\n userInner: {\n borderRadius: 4,\n width: '100%',\n height: '100%',\n alignItems: 'center',\n paddingTop: 32,\n paddingHorizontal: 16,\n backgroundColor: '#fff',\n },\n userName: {\n fontFamily: 'sf-semibold',\n color: TEXT_DARKEST,\n fontSize: 14,\n textAlign: 'center',\n marginTop: 4,\n },\n userLocation: {\n fontFamily: 'sf-regular',\n color: TEXT_DARKEST,\n fontSize: 13,\n textAlign: 'center',\n marginTop: 4,\n },\n};\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n user: state.user,\n };\n};\n\nexport default withNavigationFocus(connect(mapStateToProps, {})(KioskPeoplePage));\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["React","PureComponent","connect","KioskPeoplePage","PeoplePage","PeopleContainer","render","props","user","type","createElement","mapStateToProps","state"],"sources":["PeopleContainer.js"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { connect } from 'react-redux';\nimport KioskPeoplePage from './KioskPeoplePage';\nimport PeoplePage from './PeoplePage';\n\nclass PeopleContainer extends PureComponent {\n render() {\n if (this.props.user.type === 'KIOSK') {\n return <KioskPeoplePage {...this.props} />;\n }\n return <PeoplePage {...this.props} />;\n }\n}\n\nconst mapStateToProps = state => {\n return {\n user: state.user,\n };\n};\n\nexport default connect(mapStateToProps, {})(PeopleContainer);\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,OAAO,QAAQ,aAAa;AACrC,OAAOC,eAAe,MAAM,mBAAmB;AAC/C,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAMC,eAAe,SAASJ,aAAa,CAAC;EAC1CK,MAAMA,CAAA,EAAG;IACP,IAAI,IAAI,CAACC,KAAK,CAACC,IAAI,CAACC,IAAI,KAAK,OAAO,EAAE;MACpC,oBAAOT,KAAA,CAAAU,aAAA,CAACP,eAAe,EAAK,IAAI,CAACI,KAAQ,CAAC;IAC5C;IACA,oBAAOP,KAAA,CAAAU,aAAA,CAACN,UAAU,EAAK,IAAI,CAACG,KAAQ,CAAC;EACvC;AACF;AAEA,MAAMI,eAAe,GAAGC,KAAK,IAAI;EAC/B,OAAO;IACLJ,IAAI,EAAEI,KAAK,CAACJ;EACd,CAAC;AACH,CAAC;AAED,eAAeN,OAAO,CAACS,eAAe,EAAE,CAAC,CAAC,CAAC,CAACN,eAAe,CAAC"}
1
+ {"version":3,"names":["React","PureComponent","connect","KioskPeoplePage","PeoplePage","PeopleContainer","render","props","user","type","createElement","mapStateToProps","state"],"sources":["PeopleContainer.js"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { connect } from 'react-redux';\nimport KioskPeoplePage from './KioskPeoplePage';\nimport PeoplePage from './PeoplePage';\n\nclass PeopleContainer extends PureComponent {\n render() {\n if (this.props.user.type === 'KIOSK') {\n return <KioskPeoplePage {...this.props} />;\n }\n return <PeoplePage {...this.props} />;\n }\n}\n\nconst mapStateToProps = state => {\n return {\n user: state.user,\n };\n};\n\nexport default connect(mapStateToProps, {})(PeopleContainer);\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,OAAO,QAAQ,aAAa;AACrC,OAAOC,eAAe,MAAM,mBAAmB;AAC/C,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAMC,eAAe,SAASJ,aAAa,CAAC;EAC1CK,MAAMA,CAAA,EAAG;IACP,IAAI,IAAI,CAACC,KAAK,CAACC,IAAI,CAACC,IAAI,KAAK,OAAO,EAAE;MACpC,oBAAOT,KAAA,CAAAU,aAAA,CAACP,eAAe,EAAK,IAAI,CAACI,KAAQ,CAAC;IAC5C;IACA,oBAAOP,KAAA,CAAAU,aAAA,CAACN,UAAU,EAAK,IAAI,CAACG,KAAQ,CAAC;EACvC;AACF;AAEA,MAAMI,eAAe,GAAGC,KAAK,IAAI;EAC/B,OAAO;IACLJ,IAAI,EAAEI,KAAK,CAACJ;EACd,CAAC;AACH,CAAC;AAED,eAAeN,OAAO,CAACS,eAAe,EAAE,CAAC,CAAC,CAAC,CAACN,eAAe,CAAC","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
1
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
2
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import React, { Component } from 'react';
5
5
  import { View } from 'react-native';
@@ -336,20 +336,22 @@ const mapStateToProps = state => {
336
336
  id: element.PrivateChatUser.userId
337
337
  });
338
338
  if (!_.isUndefined(user)) {
339
+ var _element$lastMessage, _element$lastMessage2;
339
340
  // fill in information in users list
340
- user.lastMessage = element.lastMessage.text;
341
- user.lastMessageAt = !_.isEmpty(user.lastMessage) ? element.lastMessage.createdAt : null;
341
+ user.lastMessage = ((_element$lastMessage = element.lastMessage) === null || _element$lastMessage === void 0 ? void 0 : _element$lastMessage.text) || '';
342
+ user.lastMessageAt = !_.isEmpty(user.lastMessage) ? (_element$lastMessage2 = element.lastMessage) === null || _element$lastMessage2 === void 0 ? void 0 : _element$lastMessage2.createdAt : null;
342
343
  if (!_.isUndefined(element.Unread) && !_.isEmpty(element.Unread) && !_.isUndefined(element.Unread[state.user.uid])) {
343
344
  user.unread = element.Unread[state.user.uid];
344
345
  }
345
346
  } else {
347
+ var _element$lastMessage3, _element$lastMessage4;
346
348
  // add to others section
347
349
  const user = {
348
350
  displayName: element.PrivateChatUser.displayName,
349
351
  id: element.PrivateChatUser.userId,
350
352
  key: element.PrivateChatUser.userId,
351
- lastMessage: element.lastMessage.text,
352
- lastMessageAt: element.lastMessage && element.lastMessage.createdAt ? element.lastMessage.createdAt : null,
353
+ lastMessage: ((_element$lastMessage3 = element.lastMessage) === null || _element$lastMessage3 === void 0 ? void 0 : _element$lastMessage3.text) || '',
354
+ lastMessageAt: ((_element$lastMessage4 = element.lastMessage) === null || _element$lastMessage4 === void 0 ? void 0 : _element$lastMessage4.createdAt) || null,
353
355
  profilePic: element.PrivateChatUser.profilePic,
354
356
  profilePicThumb: element.PrivateChatUser.profilePic,
355
357
  section: 'Others'
@@ -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","lastMessageAt","createdAt","unread","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 const res = await circleActions.getGroups(this.props.user.uid);\n // console.log('getGroups', res.data);\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 && element.lastMessage.createdAt ? 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 const res = await circleActions.getGroups(this.props.user.uid);\n // console.log('getGroups', res.data);\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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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["Components","Attachment","BackButton","ConfirmPopup","DropDownMenu","DropDownItem","EmptyStateMain","FormCard","FormCardSection","GenericInput","Header","ImagePopup","ImageUploader","InlineButton","Input","LoadingIndicator","MiddlePopup","PDFPopup","PlussChat","ProfilePic","Spinner","StickyFooter","TextStyle","Toggle","UserListing"],"sources":["index.js"],"sourcesContent":["import { Components } from '../../core.config';\n\nexport const Attachment = Components.Attachment;\nexport const BackButton = Components.BackButton;\nexport const ConfirmPopup = Components.ConfirmPopup;\nexport const DropDownMenu = Components.DropDownMenu;\nexport const DropDownItem = Components.DropDownItem;\nexport const EmptyStateMain = Components.EmptyStateMain;\nexport const FormCard = Components.FormCard;\nexport const FormCardSection = Components.FormCardSection;\nexport const GenericInput = Components.GenericInput;\nexport const Header = Components.Header;\nexport const ImagePopup = Components.ImagePopup;\nexport const ImageUploader = Components.ImageUploader;\nexport const InlineButton = Components.InlineButton;\nexport const Input = Components.Input;\nexport const LoadingIndicator = Components.LoadingIndicator;\nexport const MiddlePopup = Components.MiddlePopup;\nexport const PDFPopup = Components.PDFPopup;\nexport const PlussChat = Components.PlussChat;\nexport const ProfilePic = Components.ProfilePic;\nexport const Spinner = Components.Spinner;\nexport const StickyFooter = Components.StickyFooter;\nexport const TextStyle = Components.TextStyle;\nexport const Toggle = Components.Toggle;\nexport const UserListing = Components.UserListing;\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,mBAAmB;AAE9C,OAAO,MAAMC,UAAU,GAAGD,UAAU,CAACC,UAAU;AAC/C,OAAO,MAAMC,UAAU,GAAGF,UAAU,CAACE,UAAU;AAC/C,OAAO,MAAMC,YAAY,GAAGH,UAAU,CAACG,YAAY;AACnD,OAAO,MAAMC,YAAY,GAAGJ,UAAU,CAACI,YAAY;AACnD,OAAO,MAAMC,YAAY,GAAGL,UAAU,CAACK,YAAY;AACnD,OAAO,MAAMC,cAAc,GAAGN,UAAU,CAACM,cAAc;AACvD,OAAO,MAAMC,QAAQ,GAAGP,UAAU,CAACO,QAAQ;AAC3C,OAAO,MAAMC,eAAe,GAAGR,UAAU,CAACQ,eAAe;AACzD,OAAO,MAAMC,YAAY,GAAGT,UAAU,CAACS,YAAY;AACnD,OAAO,MAAMC,MAAM,GAAGV,UAAU,CAACU,MAAM;AACvC,OAAO,MAAMC,UAAU,GAAGX,UAAU,CAACW,UAAU;AAC/C,OAAO,MAAMC,aAAa,GAAGZ,UAAU,CAACY,aAAa;AACrD,OAAO,MAAMC,YAAY,GAAGb,UAAU,CAACa,YAAY;AACnD,OAAO,MAAMC,KAAK,GAAGd,UAAU,CAACc,KAAK;AACrC,OAAO,MAAMC,gBAAgB,GAAGf,UAAU,CAACe,gBAAgB;AAC3D,OAAO,MAAMC,WAAW,GAAGhB,UAAU,CAACgB,WAAW;AACjD,OAAO,MAAMC,QAAQ,GAAGjB,UAAU,CAACiB,QAAQ;AAC3C,OAAO,MAAMC,SAAS,GAAGlB,UAAU,CAACkB,SAAS;AAC7C,OAAO,MAAMC,UAAU,GAAGnB,UAAU,CAACmB,UAAU;AAC/C,OAAO,MAAMC,OAAO,GAAGpB,UAAU,CAACoB,OAAO;AACzC,OAAO,MAAMC,YAAY,GAAGrB,UAAU,CAACqB,YAAY;AACnD,OAAO,MAAMC,SAAS,GAAGtB,UAAU,CAACsB,SAAS;AAC7C,OAAO,MAAMC,MAAM,GAAGvB,UAAU,CAACuB,MAAM;AACvC,OAAO,MAAMC,WAAW,GAAGxB,UAAU,CAACwB,WAAW"}
1
+ {"version":3,"names":["Components","Attachment","BackButton","ConfirmPopup","DropDownMenu","DropDownItem","EmptyStateMain","FormCard","FormCardSection","GenericInput","Header","ImagePopup","ImageUploader","InlineButton","Input","LoadingIndicator","MiddlePopup","PDFPopup","PlussChat","ProfilePic","Spinner","StickyFooter","TextStyle","Toggle","UserListing"],"sources":["index.js"],"sourcesContent":["import { Components } from '../../core.config';\n\nexport const Attachment = Components.Attachment;\nexport const BackButton = Components.BackButton;\nexport const ConfirmPopup = Components.ConfirmPopup;\nexport const DropDownMenu = Components.DropDownMenu;\nexport const DropDownItem = Components.DropDownItem;\nexport const EmptyStateMain = Components.EmptyStateMain;\nexport const FormCard = Components.FormCard;\nexport const FormCardSection = Components.FormCardSection;\nexport const GenericInput = Components.GenericInput;\nexport const Header = Components.Header;\nexport const ImagePopup = Components.ImagePopup;\nexport const ImageUploader = Components.ImageUploader;\nexport const InlineButton = Components.InlineButton;\nexport const Input = Components.Input;\nexport const LoadingIndicator = Components.LoadingIndicator;\nexport const MiddlePopup = Components.MiddlePopup;\nexport const PDFPopup = Components.PDFPopup;\nexport const PlussChat = Components.PlussChat;\nexport const ProfilePic = Components.ProfilePic;\nexport const Spinner = Components.Spinner;\nexport const StickyFooter = Components.StickyFooter;\nexport const TextStyle = Components.TextStyle;\nexport const Toggle = Components.Toggle;\nexport const UserListing = Components.UserListing;\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,mBAAmB;AAE9C,OAAO,MAAMC,UAAU,GAAGD,UAAU,CAACC,UAAU;AAC/C,OAAO,MAAMC,UAAU,GAAGF,UAAU,CAACE,UAAU;AAC/C,OAAO,MAAMC,YAAY,GAAGH,UAAU,CAACG,YAAY;AACnD,OAAO,MAAMC,YAAY,GAAGJ,UAAU,CAACI,YAAY;AACnD,OAAO,MAAMC,YAAY,GAAGL,UAAU,CAACK,YAAY;AACnD,OAAO,MAAMC,cAAc,GAAGN,UAAU,CAACM,cAAc;AACvD,OAAO,MAAMC,QAAQ,GAAGP,UAAU,CAACO,QAAQ;AAC3C,OAAO,MAAMC,eAAe,GAAGR,UAAU,CAACQ,eAAe;AACzD,OAAO,MAAMC,YAAY,GAAGT,UAAU,CAACS,YAAY;AACnD,OAAO,MAAMC,MAAM,GAAGV,UAAU,CAACU,MAAM;AACvC,OAAO,MAAMC,UAAU,GAAGX,UAAU,CAACW,UAAU;AAC/C,OAAO,MAAMC,aAAa,GAAGZ,UAAU,CAACY,aAAa;AACrD,OAAO,MAAMC,YAAY,GAAGb,UAAU,CAACa,YAAY;AACnD,OAAO,MAAMC,KAAK,GAAGd,UAAU,CAACc,KAAK;AACrC,OAAO,MAAMC,gBAAgB,GAAGf,UAAU,CAACe,gBAAgB;AAC3D,OAAO,MAAMC,WAAW,GAAGhB,UAAU,CAACgB,WAAW;AACjD,OAAO,MAAMC,QAAQ,GAAGjB,UAAU,CAACiB,QAAQ;AAC3C,OAAO,MAAMC,SAAS,GAAGlB,UAAU,CAACkB,SAAS;AAC7C,OAAO,MAAMC,UAAU,GAAGnB,UAAU,CAACmB,UAAU;AAC/C,OAAO,MAAMC,OAAO,GAAGpB,UAAU,CAACoB,OAAO;AACzC,OAAO,MAAMC,YAAY,GAAGrB,UAAU,CAACqB,YAAY;AACnD,OAAO,MAAMC,SAAS,GAAGtB,UAAU,CAACsB,SAAS;AAC7C,OAAO,MAAMC,MAAM,GAAGvB,UAAU,CAACuB,MAAM;AACvC,OAAO,MAAMC,WAAW,GAAGxB,UAAU,CAACwB,WAAW","ignoreList":[]}