* Add helper methods to get other sizes of user photos
* InlineUserBase has either 32 or 22px size so thumb should be enough
* Those sizes were not returned by the API
* Make medium default for UserListItem
As it was before
* Remove large size; is never used
* Only request small photo for small UserListItem
Autocomplete mentions for example.
* Did not end up using this
* Restore mention autocomplete size of 40
This puts the mention autocomplete icon size back to 40 but also keeps the default size of medium for all other places we use a UserListItem (e.g. in Explore Filters).
* Add tsconfig options
Following https://reactnavigation.org/docs/typescript/?config=dynamic
* Add a navigation types file with root stack params list
* Use param list type
* Add root type for creating the navigation container ref
* Add onboarding stack param list
* Migrate OnboardingStackNavigator to TS
* Update param list type
* Update import path
* Add BottomTabParamList
* Add NoBottomTabStackParamList
* Migrate NoBottomTabStackNavigator to TS
* Add param list type
* Type options as const
* Change headerLeft option
According to the documentation (and type) this should either be a function that returns null, or undefined.
* Migrate SharedStackScreens to TS
* Just realized that SharedStack creates it's own stack navigator
* Refactor screenOptions into standalone object
* createNativeStack has not cardStyle option
I am assuming here that contentStyle is what was supposed to be set here without testing this change.
* Use header props type as provided by library
* Add LoginStackParamList
* Migrate LoginStackNavigator to TS
* Use LoginStackParamList
* Type screen options as const
* Migrate TabStackNavigator to TS file
* Add TabStackParamList
* Type screen options as const
* Create type for the bottom tab navigator props
* Use actual values possible only for the initialRouteName
* Refactor base screen options into standalone object
* Refactor debug group screen options as const
* Add missing screen
* Use Log as screen name
Follows current naming standard
* Update Log route params type
* Let function component return type be inferred
* Clean up no longer used screens
These components are not actually used as navigation screens anymore but only as modals that are shown inside of ExploreFilters.
* Type nested root navigators with the NavigatorScreenParams utility
* Move param list
* Specifying default type in the same file (move from existing type file)
https://reactnavigation.org/docs/typescript/?config=dynamic#specifying-default-types-for-usenavigation-link-ref-etc
* Composite first level of screen props
* Second nested level screen params composition
* Update BottomTabParamList to be typed as nested navigators
https://reactnavigation.org/docs/typescript/?config=dynamic#type-checking-screens-and-params-in-nested-navigator
* Make native stack screen props generic
* Two examples of using typed route params
* Use alias import
* Move file to be .ts
* For the two navigators with shared screens, intersect param type with the shared stack params
* Move file
* Add type
* Destructure uri
* Update optional argument
* Add screen params interface
* Access uri from image
This is probably a functional change, but the intention behind the previous code was clear. TS revealed that there is an object of `image` though that needs to be accessed first. Have not seen any effect as to what is fixed by this.
* Add type
* Throw error when essential strings are undefined
* Add types to our package patch
* Update PhotoLibrary.tsx
* Only import what we use
* Add param property
* Type param as to what is passed in from AddObsButton
* Check for UUID and error out if not given
* Specify mandatory option
This is not a functional change because local ? x : y is used in the function and so the not branch was already executed.
* break part out into explicitly platform-specific flows