Commit Graph

31 Commits

Author SHA1 Message Date
Kirill Kamakin
eca325ebe4 Simplify error handling 2022-04-05 15:35:18 +05:00
Kirill Kamakin
468aa8c02a Implement login/logout functionality 2022-04-04 16:42:22 +05:00
Kirill Kamakin
f44f54522d Extract Base URL from authentication 2022-04-04 03:34:50 +05:00
Kirill Kamakin
617bcc7eae Reduce page size to something more efficient 2022-04-04 02:38:47 +05:00
Kirill Kamakin
ef2aa5b412 Allow recipe image to be null 2022-04-04 02:37:51 +05:00
Kirill Kamakin
b3e25db4df Replace Shared Preferences with Data Store 2022-04-03 19:59:57 +05:00
Kirill Kamakin
ec5d05c819 Use @Singleton where possible 2022-04-03 17:24:38 +05:00
Kirill Kamakin
8fee0c3a3d Reorganize code 2022-04-03 17:21:18 +05:00
Kirill Kamakin
7fc2887dc7 Major code refactoring
Main goals are:
1. Ability to use mocks in unit tests instead of
having to setup mock web server as if it was an
integration test.
2. Cache Retrofit services in memory
3. Make it easier to read
4. Use OptIn where possible instead of propagating
Experimental* annotations everywhere
2022-04-03 00:17:28 +05:00
Kirill Kamakin
706f981cca Suppress Room warning 2022-04-02 18:08:14 +05:00
Kirill Kamakin
25f14226df Replace Stetho with Flipper, add LeakCanary 2021-12-27 14:26:35 +03:00
Kirill Kamakin
81fb1ae984 Revert "Add Stetho to debug application (#18)"
This reverts commit cc2fb772
Stetho seems to be unmaintained anymore
It also doesn't work with latest Chrome
2021-12-27 12:31:34 +03:00
Kirill Kamakin
dfaa12907c Move AuthService to impl package 2021-12-27 11:05:46 +03:00
Kirill Kamakin
edfac85e8e Extract dagger modules to di package 2021-12-27 11:03:38 +03:00
Kirill Kamakin
cc2fb77269 Add Stetho to debug application (#18) 2021-11-28 13:32:05 +00:00
Kirill Kamakin
0586776a3e Fix image loader duplicating slashes 2021-11-27 12:34:37 +03:00
Kirill Kamakin
339f8327de Implement URL input format checks 2021-11-27 12:27:25 +03:00
Kirill Kamakin
897698ab02 Extract remote classes to local ones mapping 2021-11-27 00:21:15 +03:00
Kirill Kamakin
b3d03c5281 Extract SharedPreferences extensions to a file 2021-11-27 00:19:49 +03:00
Kirill Kamakin
dc6084ee25 Move auth response handling to runCatching
runCatching is easier to read and understand than mapCatching
2021-11-27 00:18:56 +03:00
Kirill Kamakin
b5606f3241 Move network extensions to separate file 2021-11-27 00:18:12 +03:00
Kirill Kamakin
20c19fd644 Move RoomTypeConverters to util 2021-11-27 00:17:18 +03:00
Kirill Kamakin
91078de1a7 Replace PagingSource factory with Google's impl 2021-11-26 19:39:44 +03:00
Kirill Kamakin
57babcbd1f Fix using trySendBlocking where trySend must be 2021-11-23 23:48:53 +03:00
Kirill Kamakin
808e1ce359 Map auth errors to internal representation 2021-11-21 17:27:22 +03:00
Kirill Kamakin
dd9c302729 Reuse OkHttp instance 2021-11-20 22:23:51 +03:00
Kirill Kamakin
70c0df1cf7 Fix ConcurrentModificationException in RecipePagingSourceFactory
It seems that it is possible to launch several coroutines on same
main thread of application. That's why it is possible to launch both
invoke and invalidate at the same time even though they are marked as
synchronized. To fix the issue this commit uses a concurrent collection
instead of synchronization.
2021-11-20 21:13:26 +03:00
Kirill Kamakin
4b817ba404 Add disclaimer fragment 2021-11-20 18:43:33 +03:00
Kirill Kamakin
e39b8ae354 Provide SharedPreferences via Hilt 2021-11-20 15:36:13 +03:00
Kirill Kamakin
1985764340 Fix ConcurrentModificationException caused by coroutines 2021-11-20 14:07:09 +03:00
Kirill Kamakin
5866584d14 Replace "Mealie" with "Mealient" everywhere 2021-11-20 13:44:07 +03:00