gitextract_qf805k6a/ ├── .gitignore ├── README.md ├── app/ │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src/ │ ├── main/ │ │ ├── AndroidManifest.xml │ │ ├── java/ │ │ │ └── com/ │ │ │ └── wiseassblog/ │ │ │ └── spacenotes/ │ │ │ ├── SpaceNotes.kt │ │ │ ├── common/ │ │ │ │ ├── AndroidExt.kt │ │ │ │ ├── BaseLogic.kt │ │ │ │ ├── Constants.kt │ │ │ │ └── Navigation.kt │ │ │ ├── login/ │ │ │ │ ├── ILoginContract.kt │ │ │ │ ├── LoginActivity.kt │ │ │ │ ├── LoginLogic.kt │ │ │ │ ├── LoginResult.kt │ │ │ │ └── buildlogic/ │ │ │ │ └── LoginInjector.kt │ │ │ ├── notedetail/ │ │ │ │ ├── INoteDetailContract.kt │ │ │ │ ├── NoteDetailActivity.kt │ │ │ │ ├── NoteDetailLogic.kt │ │ │ │ ├── NoteDetailView.kt │ │ │ │ ├── NoteDetailViewModel.kt │ │ │ │ └── buildlogic/ │ │ │ │ └── NoteDetailInjector.kt │ │ │ └── notelist/ │ │ │ ├── INoteListContract.kt │ │ │ ├── NoteDiffUtilCallback.kt │ │ │ ├── NoteListActivity.kt │ │ │ ├── NoteListAdapter.kt │ │ │ ├── NoteListLogic.kt │ │ │ ├── NoteListView.kt │ │ │ ├── NoteListViewModel.kt │ │ │ └── buildlogic/ │ │ │ └── NoteListInjector.kt │ │ └── res/ │ │ ├── drawable/ │ │ │ ├── antenna_loop.xml │ │ │ ├── antenna_loop_fast.xml │ │ │ ├── ic_access_time_black_24dp.xml │ │ │ ├── ic_arrow_back_black_24dp.xml │ │ │ ├── ic_baseline_add_24px.xml │ │ │ ├── ic_baseline_event_24px.xml │ │ │ ├── ic_delete_forever_black_24dp.xml │ │ │ ├── ic_done_black_24dp.xml │ │ │ ├── ic_launcher_background.xml │ │ │ ├── ic_visibility_off_black_24dp.xml │ │ │ ├── ic_vpn_key_black_24dp.xml │ │ │ ├── satellite_beam.xml │ │ │ └── space_loop.xml │ │ ├── drawable-v24/ │ │ │ └── ic_launcher_foreground.xml │ │ ├── layout/ │ │ │ ├── activity_login.xml │ │ │ ├── activity_note_detail.xml │ │ │ ├── activity_note_list.xml │ │ │ ├── activity_user_auth.xml │ │ │ ├── fragment_note_detail.xml │ │ │ ├── fragment_note_list.xml │ │ │ └── item_note.xml │ │ ├── mipmap-anydpi-v26/ │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ └── values/ │ │ ├── colors.xml │ │ ├── strings.xml │ │ ├── styles.xml │ │ └── view_styles.xml │ └── test/ │ └── java/ │ └── com/ │ └── wiseassblog/ │ └── spacenotes/ │ ├── LoginLogicTest.kt │ ├── NoteDetailLogicTest.kt │ └── NoteListLogicTest.kt ├── build.gradle ├── data/ │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src/ │ ├── main/ │ │ ├── AndroidManifest.xml │ │ ├── java/ │ │ │ └── com/ │ │ │ └── wiseassblog/ │ │ │ └── data/ │ │ │ ├── DataExt.kt │ │ │ ├── auth/ │ │ │ │ └── FirebaseAuthRepositoryImpl.kt │ │ │ ├── datamodels/ │ │ │ │ ├── AnonymousRoomNote.kt │ │ │ │ ├── FirebaseNote.kt │ │ │ │ ├── RegisteredRoomNote.kt │ │ │ │ └── RegisteredRoomTransaction.kt │ │ │ ├── note/ │ │ │ │ ├── anonymous/ │ │ │ │ │ ├── AnonymousNoteDao.kt │ │ │ │ │ ├── RoomAnonymousNoteDatabase.kt │ │ │ │ │ └── RoomLocalAnonymousRepositoryImpl.kt │ │ │ │ ├── public/ │ │ │ │ │ └── FirestorePublicNoteRepositoryImpl.kt │ │ │ │ └── registered/ │ │ │ │ ├── FirestorePrivateRemoteNoteImpl.kt │ │ │ │ ├── RegisteredNoteDao.kt │ │ │ │ ├── RegisteredNoteRepositoryImpl.kt │ │ │ │ ├── RegisteredTransactionDao.kt │ │ │ │ ├── RoomLocalCacheImpl.kt │ │ │ │ └── RoomRegisteredNoteDatabase.kt │ │ │ └── transaction/ │ │ │ ├── RoomRegisteredTransactionDatabase.kt │ │ │ └── RoomTransactionRepositoryImpl.kt │ │ └── res/ │ │ └── values/ │ │ └── strings.xml │ └── test/ │ └── java/ │ └── com/ │ └── wiseassblog/ │ └── data/ │ ├── ExtTest.kt │ └── RegisteredNoteRepositoryTest.kt ├── domain/ │ ├── .gitignore │ ├── build.gradle │ └── src/ │ ├── main/ │ │ └── java/ │ │ └── com/ │ │ └── wiseassblog/ │ │ └── domain/ │ │ ├── DispatcherProvider.kt │ │ ├── domainmodel/ │ │ │ ├── Note.kt │ │ │ ├── NoteTransaction.kt │ │ │ ├── Result.kt │ │ │ └── User.kt │ │ ├── error/ │ │ │ └── SpaceNotesError.kt │ │ ├── interactor/ │ │ │ ├── AnonymousNoteSource.kt │ │ │ ├── AuthSource.kt │ │ │ ├── PublicNoteSource.kt │ │ │ └── RegisteredNoteSource.kt │ │ ├── repository/ │ │ │ ├── IAuthRepository.kt │ │ │ ├── ILocalNoteRepository.kt │ │ │ ├── IPublicNoteRepository.kt │ │ │ ├── IRemoteNoteRepository.kt │ │ │ └── ITransactionRepository.kt │ │ └── servicelocator/ │ │ ├── NoteServiceLocator.kt │ │ └── UserServiceLocator.kt │ └── test/ │ └── java/ │ └── com/ │ └── wiseassblog/ │ └── domain/ │ ├── AnonymousNoteSourceTest.kt │ ├── PublicNoteSourceTest.kt │ └── RegisteredNoteSourceTest.kt ├── gradle/ │ └── wrapper/ │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradle.properties ├── gradlew ├── gradlew.bat ├── settings.gradle └── versions.gradle