* Add e2e test to log in a test user
* Add config variables to .env.example
* Add e2e user credentials to .env created for workflow
* Fix newline typo in workflow file
* Change ios e2e to run only on push to main as well
Co-authored-by: Johannes Klein <johannes.t.klein@gmail.com>
* Camera and gallery now display after granting permission
Previously these were not quite working because the usePhotos hook was asking
for a permission, so if that was used anywhere in conjunction with another
permission request, one or both success promises never got executed. This
commit tries to solve that with a PermissionGate component that takes a
permission as a prop, asks for it if not granted, then renders its children
when granted. If not granted, it renders a message saying that the permission
is required to use the feature.
Other stuff
* Added `env.example` so people know how to populate `.env`
* Added the `intl-pluralrules` polyfill to support pluralization with i18next
* Skip some token granting logic if the user is not logged in
* Trim whitespace from username/email before auth
* Some minor UI changes to auth form so I know where to tap
* Test fixes
* Use a full screen view for children of PermissionGate
* Globalized text on PermissionGate