forked from Ivasoft/mattermost-mobile
* Added DrawerItem component
* WIP Account Screen
* Added react-native-paper
* Added StatusLabel Component
* Extracted i18n
* TS fix DrawerItem component
* WIP Account Screen
* Added server name label under log out
* Updated translation
* WIP
* Fixes the Offline text style
* Added Metropolis fonts
* WIP
* Typo clean up
* WIP
* WIP
* WIP
* Added server display name
* Writing OpenSans properly
* WIP
* WIP
* Added OptionsModal
* Opening OptionsModal
* Added translation keys
* Writes status to local db
* Fix missing translation
* Fix OptionModal not dismissing
* Pushing status to server
* Refactored
* Added CustomStatusExpiry component
* Added sub components
* Added CustomLabel
* CustomStatus WIP
* Added Custom Status screen WIP
* WIP - unsetCustomStatus and CustomStatus constant
* WIP
* WIP
* WIP
* WIP
* WIP
* WIP
* WIP
* Retrieving RecentCustomStatuses from Preferences table
* WIP
* WIP
* WIP
* Added Clear After Modal
* WIP - Transations
* WIP
* Done with showing modal cst
* wip
* Clear After Modal - DONE
* fix
* Added missing API calls
* wip
* Causing screen refresh
* wip
* WIP
* WIP
* WIP
* Code clean up
* Added OOO alert box
* Refactored Options-Item
* Refactored OptionsModalList component
* Opening 'status' in BottomSheet instead of OptionsModal
* AddReaction screen - WIP
* Add Reaction screen - WIP
* Added EmojiPickerRow
* Added @components/emoji_picker - WIP
* Emoji Picker - WIP
* WIP
* WIP
* WIP
* SectionList - WIP
* Installed react-native-section_list_get_item_layout
* Adding API calls - WIP
* WIP
* Search Bar component - WIP
* WIP
* WIP
* WIP
* Rendering Emoticons now - have to tackle some fixmes
* Code clean up
* Code clean up - WIP
* Code clean up
* WIP
* Major clean up
* wip
* WIP
* Fix rendering issue with SectionIcons and SearchBar
* Tackled the CustomEmojiPage
* Code clean up
* WIP
* Done with loading User Profiles for Custom Emoji
* Code clean up
* Code Clean up
* Fix screen Account
* Added missing sql file for IOS Pod
* Updated Podfile.lock
* Using queryConfig instead of queryCommonSystemValues
* Fix - Custom status
* Fix - Custom Status - Error
* Fix - Clear Pass Status - WIP
* Fix - Custom Status Clear
* Need to fix CST clear
* WIP
* Status clear - working
* Using catchError operator
* remove unnecessary prop
* Status BottomSheet now has colored indicators
* Added KeyboardTrackingView from 'react-native-keyboard-tracking-view'
* Code clean up
* WIP
* code clean up
* Added a safety check
* Fix - Display suggestions
* Code clean up based on PR Review
* Code clean up
* Code clean up
* Code clean up
* Corrections
* Fix tsc
* TS fix
* Removed unnecessary prop
* Fix SearchBar Ts
* Updated tests
* Delete search_bar.test.js.snap
* Merge branch 'gekidou' into gekidou_account_screen
* Revert "Merge branch 'gekidou' into gekidou_account_screen"
This reverts commit 5defc31321.
* Fix fonts
* Refactor home account screen
* fix theme provider
* refactor bottom sheet
* remove paper provider
* update drawer item snapshots
* Remove options modal screen
* remove react-native-ui-lib dependency
* Refactor & fix custom status & navigation (including tablet)
* Refactor emoji picker
Co-authored-by: Avinash Lingaloo <>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
93 lines
2.4 KiB
TypeScript
93 lines
2.4 KiB
TypeScript
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
|
// See LICENSE.txt for license information.
|
|
|
|
type UserNotifyProps = {
|
|
auto_responder_active?: 'true' | 'false';
|
|
auto_responder_message?: string;
|
|
desktop: 'default' | 'all' | 'mention' | 'none';
|
|
desktop_notification_sound?: string;
|
|
desktop_sound: 'true' | 'false';
|
|
email: 'true' | 'false';
|
|
mark_unread: 'all' | 'mention';
|
|
push: 'default' | 'all' | 'mention' | 'none';
|
|
push_status: 'ooo' | 'offline' | 'away' | 'dnd' | 'online';
|
|
comments: 'never' | 'root' | 'any';
|
|
first_name: 'true' | 'false';
|
|
channel: 'true' | 'false';
|
|
mention_keys: string;
|
|
user_id?: string;
|
|
};
|
|
|
|
type UserProfile = {
|
|
id: string;
|
|
create_at: number;
|
|
update_at: number;
|
|
delete_at: number;
|
|
username: string;
|
|
auth_data?: string;
|
|
auth_service: string;
|
|
email: string;
|
|
email_verified?: boolean;
|
|
nickname: string;
|
|
first_name: string;
|
|
last_name: string;
|
|
position: string;
|
|
roles: string;
|
|
locale: string;
|
|
notify_props: UserNotifyProps;
|
|
props?: UserProps;
|
|
terms_of_service_id?: string;
|
|
terms_of_service_create_at?: number;
|
|
timezone?: UserTimezone;
|
|
is_bot: boolean;
|
|
last_picture_update: number;
|
|
};
|
|
|
|
type UsersState = {
|
|
currentUserId: string;
|
|
isManualStatus: RelationOneToOne<UserProfile, boolean>;
|
|
mySessions: any[];
|
|
profiles: IDMappedObjects<UserProfile>;
|
|
profilesInTeam: RelationOneToMany<Team, UserProfile>;
|
|
profilesNotInTeam: RelationOneToMany<Team, UserProfile>;
|
|
profilesWithoutTeam: Set<string>;
|
|
profilesInChannel: RelationOneToMany<Channel, UserProfile>;
|
|
profilesNotInChannel: RelationOneToMany<Channel, UserProfile>;
|
|
statuses: RelationOneToOne<UserProfile, string>;
|
|
stats: any;
|
|
};
|
|
|
|
type UserTimezone = {
|
|
useAutomaticTimezone: boolean | string;
|
|
automaticTimezone: string;
|
|
manualTimezone: string;
|
|
};
|
|
|
|
type UserActivity = {
|
|
[x in PostType]: {
|
|
[y in $ID<UserProfile>]: | {
|
|
ids: Array<$ID<UserProfile>>;
|
|
usernames: Array<UserProfile['username']>;
|
|
} | Array<$ID<UserProfile>>;
|
|
};
|
|
};
|
|
|
|
type UserStatus = {
|
|
user_id: string;
|
|
status: string;
|
|
manual: boolean;
|
|
last_activity_at: number;
|
|
active_channel?: string;
|
|
};
|
|
|
|
type UserProps = {
|
|
[userPropsName: string]: any;
|
|
};
|
|
|
|
type UserCustomStatus = {
|
|
emoji?: string;
|
|
text?: string;
|
|
expires_at?: string;
|
|
duration?: CustomStatusDuration;
|
|
};
|