diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 2df14bed..0cf9423a 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -12,10 +12,10 @@ diff --git a/app/build.gradle b/app/build.gradle index b269f2a4..15a9262c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,7 +1,6 @@ plugins { id 'com.android.application' id 'kotlin-android' - id 'kotlin-kapt' } android { @@ -14,16 +13,6 @@ android { targetSdkVersion 30 versionCode 1 versionName "1.0" - - javaCompileOptions { - annotationProcessorOptions { - arguments = [ - "room.incremental" : "true", - "room.expandProjection": "true" - ] - } - } - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } @@ -33,14 +22,16 @@ android { proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } + compileOptions { - coreLibraryDesugaringEnabled true sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } + buildFeatures { compose true } + composeOptions { kotlinCompilerVersion '1.4.0' kotlinCompilerExtensionVersion "${compose_version}" @@ -56,7 +47,7 @@ tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach { dependencies { - kapt "androidx.room:room-compiler:$room_version" + implementation(project(":data")) implementation 'androidx.core:core-ktx:1.5.0-alpha02' implementation 'androidx.appcompat:appcompat:1.3.0-alpha02' implementation "androidx.compose.foundation:foundation:$compose_version" @@ -69,13 +60,10 @@ dependencies { implementation "androidx.compose.ui:ui-text:$compose_version" implementation "androidx.compose.ui:ui-text-android:$compose_version" implementation "androidx.compose.ui:ui-unit:$compose_version" - implementation "androidx.room:room-runtime:$room_version" - implementation "androidx.room:room-ktx:$room_version" implementation "androidx.ui:ui-tooling:$compose_version" implementation 'com.google.android.material:material:1.3.0-alpha02' testImplementation 'junit:junit:4.13' androidTestImplementation 'androidx.test.ext:junit:1.1.2' androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' androidTestImplementation "androidx.ui:ui-test:$compose_version" - coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:1.0.10" } diff --git a/data/.gitignore b/data/.gitignore new file mode 100644 index 00000000..42afabfd --- /dev/null +++ b/data/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/data/build.gradle b/data/build.gradle new file mode 100644 index 00000000..4d931b88 --- /dev/null +++ b/data/build.gradle @@ -0,0 +1,38 @@ +plugins { + id 'com.android.library' + id 'kotlin-android' + id 'kotlin-kapt' +} + +android { + compileSdkVersion 30 + buildToolsVersion "30.0.2" + + defaultConfig { + minSdkVersion 23 + targetSdkVersion 30 + versionCode 1 + versionName "1.0" + + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + } + + compileOptions { + coreLibraryDesugaringEnabled true + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + kotlinOptions { + jvmTarget = '1.8' + } +} + +dependencies { + kapt "androidx.room:room-compiler:$room_version" + api "androidx.room:room-runtime:$room_version" + api "androidx.room:room-ktx:$room_version" + testImplementation 'junit:junit:4.13' + androidTestImplementation 'androidx.test.ext:junit:1.1.2' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' + coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:1.0.10" +} diff --git a/data/src/main/AndroidManifest.xml b/data/src/main/AndroidManifest.xml new file mode 100644 index 00000000..6ca79db8 --- /dev/null +++ b/data/src/main/AndroidManifest.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/app/src/main/java/dev/msfjarvis/todo/data/model/TodoItem.kt b/data/src/main/java/dev/msfjarvis/todo/data/model/TodoItem.kt similarity index 85% rename from app/src/main/java/dev/msfjarvis/todo/data/model/TodoItem.kt rename to data/src/main/java/dev/msfjarvis/todo/data/model/TodoItem.kt index bd2a2ca8..a34a51a2 100644 --- a/app/src/main/java/dev/msfjarvis/todo/data/model/TodoItem.kt +++ b/data/src/main/java/dev/msfjarvis/todo/data/model/TodoItem.kt @@ -1,12 +1,10 @@ package dev.msfjarvis.todo.data.model -import androidx.compose.runtime.Immutable import androidx.room.Entity import androidx.room.PrimaryKey import java.time.LocalDateTime import java.time.ZoneId -@Immutable @Entity( tableName = "todo_items", ) diff --git a/app/src/main/java/dev/msfjarvis/todo/data/source/DateTimeTypeConverters.kt b/data/src/main/java/dev/msfjarvis/todo/data/source/DateTimeTypeConverters.kt similarity index 100% rename from app/src/main/java/dev/msfjarvis/todo/data/source/DateTimeTypeConverters.kt rename to data/src/main/java/dev/msfjarvis/todo/data/source/DateTimeTypeConverters.kt diff --git a/app/src/main/java/dev/msfjarvis/todo/data/source/TodoDatabase.kt b/data/src/main/java/dev/msfjarvis/todo/data/source/TodoDatabase.kt similarity index 100% rename from app/src/main/java/dev/msfjarvis/todo/data/source/TodoDatabase.kt rename to data/src/main/java/dev/msfjarvis/todo/data/source/TodoDatabase.kt diff --git a/app/src/main/java/dev/msfjarvis/todo/data/source/TodoItemDao.kt b/data/src/main/java/dev/msfjarvis/todo/data/source/TodoItemDao.kt similarity index 100% rename from app/src/main/java/dev/msfjarvis/todo/data/source/TodoItemDao.kt rename to data/src/main/java/dev/msfjarvis/todo/data/source/TodoItemDao.kt diff --git a/settings.gradle b/settings.gradle index 2b3f68fe..6f56f806 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,2 +1,3 @@ rootProject.name = "Compose-ToDo" include ':app' +include ':data'