├── .gitignore ├── LICENSE ├── README.md ├── androidApp ├── build.gradle.kts └── src │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── com │ │ └── kashif │ │ └── kmmnewsapp │ │ └── android │ │ ├── KmmNewsAPP.kt │ │ ├── MainActivity.kt │ │ ├── MainApplication.kt │ │ ├── components │ │ ├── BottomNavigationBar.kt │ │ ├── CategoryChips.kt │ │ ├── FeaturedArticleCard.kt │ │ ├── NewsCard.kt │ │ ├── PaginatedHeadlinesList.kt │ │ ├── SearchBar.kt │ │ ├── ShadowCard.kt │ │ ├── ShortForYouSection.kt │ │ └── WelcomeHeader.kt │ │ ├── screens │ │ └── home │ │ │ └── HomeScreen.kt │ │ └── theme │ │ ├── Color.kt │ │ ├── Shape.kt │ │ ├── Spacing.kt │ │ ├── Theme.kt │ │ └── Typography.kt │ └── res │ ├── font │ ├── light.ttf │ ├── mediym.ttf │ └── regular.ttf │ └── values │ ├── colors.xml │ ├── strings.xml │ └── styles.xml ├── gradle.properties ├── gradle ├── libs.versions.toml └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── iosApp ├── Podfile ├── Podfile.lock ├── iosApp.xcodeproj │ ├── project.pbxproj │ └── xcuserdata │ │ └── vyro.xcuserdatad │ │ └── xcschemes │ │ ├── iosApp.xcscheme │ │ └── xcschememanagement.plist ├── iosApp.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ │ └── vyro.xcuserdatad │ │ └── UserInterfaceState.xcuserstate └── iosApp │ ├── Assets.xcassets │ ├── AppIcon.appiconset │ │ └── Contents.json │ ├── Blue.colorset │ │ └── Contents.json │ └── Contents.json │ ├── ContentView.swift │ ├── HeadlinesView.swift │ ├── Info.plist │ ├── Preview Content │ └── Preview Assets.xcassets │ │ └── Contents.json │ ├── Views │ ├── BottomNavigationView.swift │ ├── CategoryChipsView.swift │ ├── FeaturedArticleCard.swift │ ├── HeadlinesView.swift │ ├── HomeScreenView.swift │ ├── SearchBarView.swift │ ├── ShortForYouSection.swift │ └── WelcomeHeaderView.swift │ ├── iOSApp.swift │ └── utils │ ├── Extensions.swift │ └── KoinExtensions.swift ├── observablevm ├── settings.gradle.kts └── shared ├── build.gradle.kts ├── schemas └── com.kashif.kmmnewsapp.core.database.AppDatabase │ ├── 1.json │ └── 2.json ├── shared.podspec └── src ├── androidMain ├── AndroidManifest.xml └── kotlin │ └── com │ └── kashif │ └── kmmnewsapp │ ├── Platform.kt │ └── core │ ├── database │ └── DatabaseBuilder.android.kt │ └── network │ └── NetworkConnectivityService.android.kt ├── commonMain └── kotlin │ └── com │ └── kashif │ └── kmmnewsapp │ ├── Platform.kt │ ├── SampleObservableViewModel.kt │ ├── core │ ├── cache │ │ └── CacheManager.kt │ ├── database │ │ ├── AppDatabase.kt │ │ ├── CounterDao.kt │ │ ├── CounterEntity.kt │ │ ├── DatabaseBuilder.kt │ │ ├── DatabaseProvider.kt │ │ ├── HeadlineEntity.kt │ │ └── HeadlinesDao.kt │ ├── di │ │ ├── CoreModule.kt │ │ └── HeadlinesModule.kt │ ├── network │ │ ├── NetworkConnectivityService.kt │ │ └── NewsApiService.kt │ └── pagination │ │ ├── PaginationIntent.kt │ │ ├── PaginationManager.kt │ │ └── PaginationState.kt │ ├── domain │ └── di │ │ └── KoinModule.kt │ └── feature │ └── headlines │ ├── data │ ├── HeadlineRepositoryImpl.kt │ └── mapper │ │ └── HeadlineMapper.kt │ ├── domain │ ├── GetCachedHeadlinesUseCase.kt │ ├── GetTopHeadlinesUseCase.kt │ ├── Headline.kt │ ├── HeadlineRepository.kt │ ├── LoadHeadlinesPageUseCase.kt │ └── RefreshHeadlinesUseCase.kt │ └── presentation │ ├── mvi │ ├── HeadlinesEffect.kt │ ├── HeadlinesIntent.kt │ ├── HeadlinesReducer.kt │ └── HeadlinesState.kt │ └── vm │ └── HeadlinesViewModel.kt ├── iosMain └── kotlin │ └── com │ └── kashif │ └── kmmnewsapp │ ├── KoinIos.kt │ ├── Platform.kt │ ├── core │ ├── database │ │ └── DatabaseBuilder.ios.kt │ └── network │ │ └── NetworkConnectivityService.ios.kt │ └── domain │ └── FlowExtensions.kt └── nativeMain └── kotlin └── com └── kashif └── kmmnewsapp └── core └── network └── KtorClientFactory.native.kt /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/README.md -------------------------------------------------------------------------------- /androidApp/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/build.gradle.kts -------------------------------------------------------------------------------- /androidApp/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/KmmNewsAPP.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/KmmNewsAPP.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/MainActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/MainActivity.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/MainApplication.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/MainApplication.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/BottomNavigationBar.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/BottomNavigationBar.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/CategoryChips.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/CategoryChips.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/FeaturedArticleCard.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/FeaturedArticleCard.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/NewsCard.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/NewsCard.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/PaginatedHeadlinesList.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/PaginatedHeadlinesList.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/SearchBar.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/SearchBar.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/ShadowCard.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/ShadowCard.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/ShortForYouSection.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/ShortForYouSection.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/WelcomeHeader.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/components/WelcomeHeader.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/screens/home/HomeScreen.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/screens/home/HomeScreen.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/theme/Color.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/theme/Color.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/theme/Shape.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/theme/Shape.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/theme/Spacing.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/theme/Spacing.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/theme/Theme.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/theme/Theme.kt -------------------------------------------------------------------------------- /androidApp/src/main/java/com/kashif/kmmnewsapp/android/theme/Typography.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/java/com/kashif/kmmnewsapp/android/theme/Typography.kt -------------------------------------------------------------------------------- /androidApp/src/main/res/font/light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/res/font/light.ttf -------------------------------------------------------------------------------- /androidApp/src/main/res/font/mediym.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/res/font/mediym.ttf -------------------------------------------------------------------------------- /androidApp/src/main/res/font/regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/res/font/regular.ttf -------------------------------------------------------------------------------- /androidApp/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /androidApp/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /androidApp/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/androidApp/src/main/res/values/styles.xml -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/libs.versions.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/gradle/libs.versions.toml -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/gradlew.bat -------------------------------------------------------------------------------- /iosApp/Podfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/Podfile -------------------------------------------------------------------------------- /iosApp/Podfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/Podfile.lock -------------------------------------------------------------------------------- /iosApp/iosApp.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /iosApp/iosApp.xcodeproj/xcuserdata/vyro.xcuserdatad/xcschemes/iosApp.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp.xcodeproj/xcuserdata/vyro.xcuserdatad/xcschemes/iosApp.xcscheme -------------------------------------------------------------------------------- /iosApp/iosApp.xcodeproj/xcuserdata/vyro.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp.xcodeproj/xcuserdata/vyro.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /iosApp/iosApp.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /iosApp/iosApp.xcworkspace/xcuserdata/vyro.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp.xcworkspace/xcuserdata/vyro.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /iosApp/iosApp/Assets.xcassets/Blue.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Assets.xcassets/Blue.colorset/Contents.json -------------------------------------------------------------------------------- /iosApp/iosApp/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /iosApp/iosApp/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/ContentView.swift -------------------------------------------------------------------------------- /iosApp/iosApp/HeadlinesView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/HeadlinesView.swift -------------------------------------------------------------------------------- /iosApp/iosApp/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Info.plist -------------------------------------------------------------------------------- /iosApp/iosApp/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /iosApp/iosApp/Views/BottomNavigationView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Views/BottomNavigationView.swift -------------------------------------------------------------------------------- /iosApp/iosApp/Views/CategoryChipsView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Views/CategoryChipsView.swift -------------------------------------------------------------------------------- /iosApp/iosApp/Views/FeaturedArticleCard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Views/FeaturedArticleCard.swift -------------------------------------------------------------------------------- /iosApp/iosApp/Views/HeadlinesView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Views/HeadlinesView.swift -------------------------------------------------------------------------------- /iosApp/iosApp/Views/HomeScreenView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Views/HomeScreenView.swift -------------------------------------------------------------------------------- /iosApp/iosApp/Views/SearchBarView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Views/SearchBarView.swift -------------------------------------------------------------------------------- /iosApp/iosApp/Views/ShortForYouSection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Views/ShortForYouSection.swift -------------------------------------------------------------------------------- /iosApp/iosApp/Views/WelcomeHeaderView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/Views/WelcomeHeaderView.swift -------------------------------------------------------------------------------- /iosApp/iosApp/iOSApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/iOSApp.swift -------------------------------------------------------------------------------- /iosApp/iosApp/utils/Extensions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/utils/Extensions.swift -------------------------------------------------------------------------------- /iosApp/iosApp/utils/KoinExtensions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/iosApp/iosApp/utils/KoinExtensions.swift -------------------------------------------------------------------------------- /observablevm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/observablevm -------------------------------------------------------------------------------- /settings.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/settings.gradle.kts -------------------------------------------------------------------------------- /shared/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/build.gradle.kts -------------------------------------------------------------------------------- /shared/schemas/com.kashif.kmmnewsapp.core.database.AppDatabase/1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/schemas/com.kashif.kmmnewsapp.core.database.AppDatabase/1.json -------------------------------------------------------------------------------- /shared/schemas/com.kashif.kmmnewsapp.core.database.AppDatabase/2.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/schemas/com.kashif.kmmnewsapp.core.database.AppDatabase/2.json -------------------------------------------------------------------------------- /shared/shared.podspec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/shared.podspec -------------------------------------------------------------------------------- /shared/src/androidMain/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/androidMain/AndroidManifest.xml -------------------------------------------------------------------------------- /shared/src/androidMain/kotlin/com/kashif/kmmnewsapp/Platform.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/androidMain/kotlin/com/kashif/kmmnewsapp/Platform.kt -------------------------------------------------------------------------------- /shared/src/androidMain/kotlin/com/kashif/kmmnewsapp/core/database/DatabaseBuilder.android.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/androidMain/kotlin/com/kashif/kmmnewsapp/core/database/DatabaseBuilder.android.kt -------------------------------------------------------------------------------- /shared/src/androidMain/kotlin/com/kashif/kmmnewsapp/core/network/NetworkConnectivityService.android.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/androidMain/kotlin/com/kashif/kmmnewsapp/core/network/NetworkConnectivityService.android.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/Platform.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/Platform.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/SampleObservableViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/SampleObservableViewModel.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/cache/CacheManager.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/cache/CacheManager.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/AppDatabase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/AppDatabase.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/CounterDao.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/CounterDao.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/CounterEntity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/CounterEntity.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/DatabaseBuilder.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/DatabaseBuilder.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/DatabaseProvider.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/DatabaseProvider.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/HeadlineEntity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/HeadlineEntity.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/HeadlinesDao.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/database/HeadlinesDao.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/di/CoreModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/di/CoreModule.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/di/HeadlinesModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/di/HeadlinesModule.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/network/NetworkConnectivityService.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/network/NetworkConnectivityService.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/network/NewsApiService.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/network/NewsApiService.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/pagination/PaginationIntent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/pagination/PaginationIntent.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/pagination/PaginationManager.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/pagination/PaginationManager.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/pagination/PaginationState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/core/pagination/PaginationState.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/domain/di/KoinModule.kt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/data/HeadlineRepositoryImpl.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/data/HeadlineRepositoryImpl.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/data/mapper/HeadlineMapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/data/mapper/HeadlineMapper.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/domain/GetCachedHeadlinesUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/domain/GetCachedHeadlinesUseCase.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/domain/GetTopHeadlinesUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/domain/GetTopHeadlinesUseCase.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/domain/Headline.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/domain/Headline.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/domain/HeadlineRepository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/domain/HeadlineRepository.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/domain/LoadHeadlinesPageUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/domain/LoadHeadlinesPageUseCase.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/domain/RefreshHeadlinesUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/domain/RefreshHeadlinesUseCase.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/presentation/mvi/HeadlinesEffect.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/presentation/mvi/HeadlinesEffect.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/presentation/mvi/HeadlinesIntent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/presentation/mvi/HeadlinesIntent.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/presentation/mvi/HeadlinesReducer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/presentation/mvi/HeadlinesReducer.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/presentation/mvi/HeadlinesState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/presentation/mvi/HeadlinesState.kt -------------------------------------------------------------------------------- /shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/presentation/vm/HeadlinesViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/commonMain/kotlin/com/kashif/kmmnewsapp/feature/headlines/presentation/vm/HeadlinesViewModel.kt -------------------------------------------------------------------------------- /shared/src/iosMain/kotlin/com/kashif/kmmnewsapp/KoinIos.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/iosMain/kotlin/com/kashif/kmmnewsapp/KoinIos.kt -------------------------------------------------------------------------------- /shared/src/iosMain/kotlin/com/kashif/kmmnewsapp/Platform.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/iosMain/kotlin/com/kashif/kmmnewsapp/Platform.kt -------------------------------------------------------------------------------- /shared/src/iosMain/kotlin/com/kashif/kmmnewsapp/core/database/DatabaseBuilder.ios.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/iosMain/kotlin/com/kashif/kmmnewsapp/core/database/DatabaseBuilder.ios.kt -------------------------------------------------------------------------------- /shared/src/iosMain/kotlin/com/kashif/kmmnewsapp/core/network/NetworkConnectivityService.ios.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/iosMain/kotlin/com/kashif/kmmnewsapp/core/network/NetworkConnectivityService.ios.kt -------------------------------------------------------------------------------- /shared/src/iosMain/kotlin/com/kashif/kmmnewsapp/domain/FlowExtensions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kashif-E/KMMNewsAPP/HEAD/shared/src/iosMain/kotlin/com/kashif/kmmnewsapp/domain/FlowExtensions.kt -------------------------------------------------------------------------------- /shared/src/nativeMain/kotlin/com/kashif/kmmnewsapp/core/network/KtorClientFactory.native.kt: -------------------------------------------------------------------------------- 1 | package com.kashif.kmmnewsapp.core.network 2 | 3 | --------------------------------------------------------------------------------