From 992a26d6b3aa31ca43648fa7659425e2c01fe918 Mon Sep 17 00:00:00 2001 From: stslex Date: Sat, 30 Aug 2025 14:34:39 +0300 Subject: [PATCH 1/5] fix testReportJob --- .github/workflows/testReportJob.yml | 4 ++-- app/build.gradle.kts | 23 ++++++++++++------- .../kotlin/AndroidApplicationComposePlugin.kt | 9 +++++--- .../main/kotlin/AndroidApplicationPlugin.kt | 14 +++++++---- .../kotlin/AndroidLibraryComposePlugin.kt | 9 +++++--- .../src/main/kotlin/AndroidLibraryPlugin.kt | 13 +++++++---- .../com.stslex93.notes/KotlinAndroid.kt | 3 ++- .../com.stslex93.notes/KoverConfiguration.kt | 9 ++++++++ build.gradle.kts | 4 ++-- gradle/libs.versions.toml | 4 ++-- 10 files changed, 62 insertions(+), 30 deletions(-) create mode 100644 build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KoverConfiguration.kt diff --git a/.github/workflows/testReportJob.yml b/.github/workflows/testReportJob.yml index 5deeaa3e..1215fde9 100644 --- a/.github/workflows/testReportJob.yml +++ b/.github/workflows/testReportJob.yml @@ -56,13 +56,13 @@ jobs: - name: Check report files run: | - ls /build/reports/kover/html/ + ls app/build/reports/kover/html - name: Archive code coverage results uses: actions/upload-artifact@v4 with: name: code-coverage-report - path: /build/reports/kover/html/ + path: app/build/reports/kover/html saveReport: name: SaveReport diff --git a/app/build.gradle.kts b/app/build.gradle.kts index d0098fb8..e5fc6e75 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -4,12 +4,19 @@ plugins { } dependencies { - implementation(project(":core:core")) - implementation(project(":core:ui")) - implementation(project(":core:database")) - implementation(project(":core:notes")) - implementation(project(":core:navigation")) - implementation(project(":feature:home")) - implementation(project(":feature:edit")) - implementation(project(":feature:edit-label")) + implementWithCover(":core:core") + implementWithCover(":core:database") + implementWithCover(":core:label") + implementWithCover(":core:navigation") + implementWithCover(":core:notes") + implementWithCover(":core:ui") + implementWithCover(":feature:edit") + implementWithCover(":feature:edit-label") + implementWithCover(":feature:home") +} + +fun DependencyHandler.implementWithCover(name: String) { + val project = project(name) + implementation(project) + kover(project) } diff --git a/build-logic/dependencies/src/main/kotlin/AndroidApplicationComposePlugin.kt b/build-logic/dependencies/src/main/kotlin/AndroidApplicationComposePlugin.kt index fab26999..598bc521 100644 --- a/build-logic/dependencies/src/main/kotlin/AndroidApplicationComposePlugin.kt +++ b/build-logic/dependencies/src/main/kotlin/AndroidApplicationComposePlugin.kt @@ -7,11 +7,14 @@ import org.gradle.api.Project import org.gradle.kotlin.dsl.getByType class AndroidApplicationComposePlugin : Plugin { + override fun apply(target: Project) { with(target) { - pluginManager.apply("com.android.application") - pluginManager.apply(libs.findPluginId("kotlin")) - pluginManager.apply(libs.findPluginId("composeCompiler")) + pluginManager.apply { + apply(libs.findPluginId("application")) + apply(libs.findPluginId("kotlin")) + apply(libs.findPluginId("composeCompiler")) + } val extension = extensions.getByType() configureAndroidCompose(extension) } diff --git a/build-logic/dependencies/src/main/kotlin/AndroidApplicationPlugin.kt b/build-logic/dependencies/src/main/kotlin/AndroidApplicationPlugin.kt index a23cadd4..6b4ec06f 100644 --- a/build-logic/dependencies/src/main/kotlin/AndroidApplicationPlugin.kt +++ b/build-logic/dependencies/src/main/kotlin/AndroidApplicationPlugin.kt @@ -1,9 +1,11 @@ import AppExt.APP_PREFIX +import AppExt.findPluginId import AppExt.findVersionInt import AppExt.findVersionString import AppExt.libs import com.android.build.api.dsl.ApplicationExtension import com.stslex93.notes.configureKotlinAndroid +import com.stslex93.notes.configureKover import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.kotlin.dsl.configure @@ -13,17 +15,19 @@ import java.io.InputStreamReader import java.util.Properties class AndroidApplicationPlugin : Plugin { + override fun apply(target: Project) { with(target) { - with(pluginManager) { - apply("com.android.application") - apply("org.jetbrains.kotlin.android") - apply("com.google.devtools.ksp") + pluginManager.apply { + apply(libs.findPluginId("application")) + apply(libs.findPluginId("kotlin")) + apply(libs.findPluginId("ksp")) + apply(libs.findPluginId("kover")) } extensions.configure { configureKotlinAndroid(this) - + configureKover() namespace = APP_PREFIX defaultConfig.apply { diff --git a/build-logic/dependencies/src/main/kotlin/AndroidLibraryComposePlugin.kt b/build-logic/dependencies/src/main/kotlin/AndroidLibraryComposePlugin.kt index 66df44bf..2ef101e6 100644 --- a/build-logic/dependencies/src/main/kotlin/AndroidLibraryComposePlugin.kt +++ b/build-logic/dependencies/src/main/kotlin/AndroidLibraryComposePlugin.kt @@ -7,11 +7,14 @@ import org.gradle.api.Project import org.gradle.kotlin.dsl.getByType class AndroidLibraryComposePlugin : Plugin { + override fun apply(target: Project) { with(target) { - pluginManager.apply("com.android.library") - pluginManager.apply(libs.findPluginId("kotlin")) - pluginManager.apply(libs.findPluginId("composeCompiler")) + pluginManager.apply { + apply(libs.findPluginId("library")) + apply(libs.findPluginId("kotlin")) + apply(libs.findPluginId("composeCompiler")) + } val extension = extensions.getByType() configureAndroidCompose(extension) } diff --git a/build-logic/dependencies/src/main/kotlin/AndroidLibraryPlugin.kt b/build-logic/dependencies/src/main/kotlin/AndroidLibraryPlugin.kt index 2f8efc29..edc6efe4 100644 --- a/build-logic/dependencies/src/main/kotlin/AndroidLibraryPlugin.kt +++ b/build-logic/dependencies/src/main/kotlin/AndroidLibraryPlugin.kt @@ -1,20 +1,25 @@ +import AppExt.findPluginId +import AppExt.libs import com.android.build.gradle.LibraryExtension import com.stslex93.notes.configureKotlinAndroid +import com.stslex93.notes.configureKover import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.kotlin.dsl.configure class AndroidLibraryPlugin : Plugin { + override fun apply(target: Project) { with(target) { - with(pluginManager) { - apply("com.android.library") - apply("org.jetbrains.kotlin.android") - apply("com.google.devtools.ksp") + pluginManager.apply { + apply(libs.findPluginId("library")) + apply(libs.findPluginId("kotlin")) + apply(libs.findPluginId("ksp")) } extensions.configure { configureKotlinAndroid(this) + configureKover() defaultConfig.apply { targetSdk = 34 testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" diff --git a/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KotlinAndroid.kt b/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KotlinAndroid.kt index 74ce54f2..26df0e5b 100644 --- a/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KotlinAndroid.kt +++ b/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KotlinAndroid.kt @@ -1,6 +1,7 @@ package com.stslex93.notes import AppExt.APP_PREFIX +import AppExt.findPluginId import AppExt.findVersionInt import AppExt.libs import com.android.build.api.dsl.CommonExtension @@ -91,4 +92,4 @@ private fun Project.configureKotlin() { freeCompilerArgs.addAll("-opt-in=kotlin.RequiresOptIn", "-Xcontext-parameters") } } -} \ No newline at end of file +} diff --git a/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KoverConfiguration.kt b/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KoverConfiguration.kt new file mode 100644 index 00000000..21fae56b --- /dev/null +++ b/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KoverConfiguration.kt @@ -0,0 +1,9 @@ +package com.stslex93.notes + +import AppExt.findPluginId +import AppExt.libs +import org.gradle.api.Project + +internal fun Project.configureKover() { + pluginManager.apply(libs.findPluginId("kover")) +} \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts index d5dfd425..32ad5c20 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,11 +1,11 @@ plugins { - id("org.jetbrains.kotlinx.kover") version "0.7.6" alias(libs.plugins.application) apply false alias(libs.plugins.kotlin) apply false alias(libs.plugins.library) apply false alias(libs.plugins.serialization) alias(libs.plugins.ksp) apply false alias(libs.plugins.composeCompiler) apply false + alias(libs.plugins.kover) } buildscript { @@ -16,7 +16,7 @@ buildscript { } dependencies { - classpath("androidx.navigation:navigation-safe-args-gradle-plugin:2.5.3") + classpath("androidx.navigation:navigation-safe-args-gradle-plugin:2.9.3") } } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 3467fa58..f2442a6d 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -34,7 +34,7 @@ androidxJunit = "1.3.0" espresso = "3.7.0" robolectric = "4.16" androidxTest = "1.7.0" - +kover = "0.9.1" [libraries] android-desugarJdkLibs = { module = "com.android.tools:desugar_jdk_libs", version.ref = "androidDesugarJdkLibs" } android-gradlePlugin = { module = "com.android.tools.build:gradle", version.ref = "androidGradlePlugin" } @@ -100,7 +100,7 @@ application = { id = "com.android.application", version.ref = "androidGradlePlug library = { id = "com.android.library", version.ref = "androidGradlePlugin" } ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" } composeCompiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } - +kover = {id = "org.jetbrains.kotlinx.kover", version.ref = "kover"} [bundles] lifecycle = [ "lifecycle-compose", From 45ed2a92454c61aa21fd9231f37c1bd776959b7a Mon Sep 17 00:00:00 2001 From: stslex Date: Sat, 30 Aug 2025 17:05:31 +0300 Subject: [PATCH 2/5] fix kover, migrate to junit5 jupiter, refactor tests --- .github/workflows/testReportJob.yml | 2 +- build-logic/dependencies/build.gradle.kts | 3 +- .../main/kotlin/AndroidApplicationPlugin.kt | 1 + .../src/main/kotlin/AndroidLibraryPlugin.kt | 3 +- .../dependencies/src/main/kotlin/AppExt.kt | 22 ++++ .../com.stslex93.notes/KotlinAndroid.kt | 50 ++++---- .../com.stslex93.notes/KoverConfiguration.kt | 52 ++++++++- build.gradle.kts | 2 +- .../notes/core/core/ExampleUnitTest.kt | 17 --- core/database/build.gradle.kts | 3 +- .../notes/core/database/BaseDatabaseTest.kt | 26 +++++ .../notes/core/database/NoteDaoTest.kt | 107 ++++++++---------- .../notes/core/database/RoomDatabaseTest.kt | 50 ++++---- .../notes/core/label/ExampleUnitTest.kt | 17 --- core/ui/build.gradle.kts | 2 +- .../com/stslex93/notes/core/ui/Extensions.kt | 62 +++++----- .../stslex93/notes/core/ui/ExampleUnitTest.kt | 17 --- .../stslex93/notes/core/ui/ExtensionsTest.kt | 43 +++++++ .../navigation/graph/EditLabelGraph.kt | 2 +- .../feature/edit_label/ui/EditLabelScreen.kt | 4 +- .../edit_label/ui/store/EditLabelStoreImpl.kt | 4 +- .../feature/edit_label/ExampleUnitTest.kt | 17 --- .../feature/edit/ui/store/EditStoreImpl.kt | 4 +- .../notes/feature/home/ui/HomeScreen.kt | 7 +- .../home/ui/components/HomeScreenNotes.kt | 6 +- .../feature/home/ui/init/HomeScreeInit.kt | 2 +- .../feature/home/ui/store/HomeStoreImpl.kt | 12 +- gradle/libs.versions.toml | 30 +++-- 28 files changed, 315 insertions(+), 252 deletions(-) delete mode 100644 core/core/src/test/java/com/stslex93/notes/core/core/ExampleUnitTest.kt create mode 100644 core/database/src/test/java/com/stslex93/notes/core/database/BaseDatabaseTest.kt delete mode 100644 core/label/src/test/java/com/stslex93/notes/core/label/ExampleUnitTest.kt delete mode 100644 core/ui/src/test/java/com/stslex93/notes/core/ui/ExampleUnitTest.kt create mode 100644 core/ui/src/test/java/com/stslex93/notes/core/ui/ExtensionsTest.kt delete mode 100644 feature/edit-label/src/test/java/com/stslex93/notes/feature/edit_label/ExampleUnitTest.kt diff --git a/.github/workflows/testReportJob.yml b/.github/workflows/testReportJob.yml index 1215fde9..2d0db7b7 100644 --- a/.github/workflows/testReportJob.yml +++ b/.github/workflows/testReportJob.yml @@ -79,7 +79,7 @@ jobs: mkdir docs/reports - name: Download report - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: name: code-coverage-report path: docs/reports diff --git a/build-logic/dependencies/build.gradle.kts b/build-logic/dependencies/build.gradle.kts index f8cae3e1..a806891e 100644 --- a/build-logic/dependencies/build.gradle.kts +++ b/build-logic/dependencies/build.gradle.kts @@ -10,6 +10,7 @@ dependencies { compileOnly(libs.kotlin.serialization) compileOnly(libs.composeCompiler.gradlePlugin) compileOnly(libs.android.tools.common) + compileOnly(libs.kover.gradlePlugin) } tasks { @@ -38,4 +39,4 @@ gradlePlugin { implementationClass = "AndroidLibraryPlugin" } } -} \ No newline at end of file +} diff --git a/build-logic/dependencies/src/main/kotlin/AndroidApplicationPlugin.kt b/build-logic/dependencies/src/main/kotlin/AndroidApplicationPlugin.kt index 6b4ec06f..e602daf3 100644 --- a/build-logic/dependencies/src/main/kotlin/AndroidApplicationPlugin.kt +++ b/build-logic/dependencies/src/main/kotlin/AndroidApplicationPlugin.kt @@ -28,6 +28,7 @@ class AndroidApplicationPlugin : Plugin { extensions.configure { configureKotlinAndroid(this) configureKover() + namespace = APP_PREFIX defaultConfig.apply { diff --git a/build-logic/dependencies/src/main/kotlin/AndroidLibraryPlugin.kt b/build-logic/dependencies/src/main/kotlin/AndroidLibraryPlugin.kt index edc6efe4..98a9d112 100644 --- a/build-logic/dependencies/src/main/kotlin/AndroidLibraryPlugin.kt +++ b/build-logic/dependencies/src/main/kotlin/AndroidLibraryPlugin.kt @@ -2,7 +2,6 @@ import AppExt.findPluginId import AppExt.libs import com.android.build.gradle.LibraryExtension import com.stslex93.notes.configureKotlinAndroid -import com.stslex93.notes.configureKover import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.kotlin.dsl.configure @@ -15,11 +14,11 @@ class AndroidLibraryPlugin : Plugin { apply(libs.findPluginId("library")) apply(libs.findPluginId("kotlin")) apply(libs.findPluginId("ksp")) + apply(libs.findPluginId("kover")) } extensions.configure { configureKotlinAndroid(this) - configureKover() defaultConfig.apply { targetSdk = 34 testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" diff --git a/build-logic/dependencies/src/main/kotlin/AppExt.kt b/build-logic/dependencies/src/main/kotlin/AppExt.kt index f2d012d0..d4c183ed 100644 --- a/build-logic/dependencies/src/main/kotlin/AppExt.kt +++ b/build-logic/dependencies/src/main/kotlin/AppExt.kt @@ -114,6 +114,28 @@ object AppExt { } } + /** + * Find the library by alias + */ + fun Project.testImplementation(vararg alias: String) { + dependencies { + alias.forEach { + add("testImplementation", libs.findLibrary(it).get()) + } + } + } + + /** + * Find the library by alias + */ + fun Project.testRuntimeOnly(vararg alias: String) { + dependencies { + alias.forEach { + add("testRuntimeOnly", libs.findLibrary(it).get()) + } + } + } + /** * Find the library by alias */ diff --git a/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KotlinAndroid.kt b/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KotlinAndroid.kt index 26df0e5b..8685783c 100644 --- a/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KotlinAndroid.kt +++ b/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KotlinAndroid.kt @@ -1,16 +1,21 @@ package com.stslex93.notes import AppExt.APP_PREFIX -import AppExt.findPluginId +import AppExt.androidTestImplementationBundle +import AppExt.coreLibraryDesugaring import AppExt.findVersionInt +import AppExt.implementation +import AppExt.implementationPlatform +import AppExt.ksp import AppExt.libs +import AppExt.testImplementationBundle +import AppExt.testRuntimeOnly import com.android.build.api.dsl.CommonExtension import com.android.build.gradle.AppExtension import org.gradle.api.JavaVersion import org.gradle.api.Project -import org.gradle.api.artifacts.VersionCatalogsExtension +import org.gradle.api.tasks.testing.Test import org.gradle.kotlin.dsl.dependencies -import org.gradle.kotlin.dsl.getByType import org.gradle.kotlin.dsl.provideDelegate import org.gradle.kotlin.dsl.withType import org.jetbrains.kotlin.gradle.dsl.JvmTarget @@ -42,29 +47,30 @@ internal fun Project.configureKotlinAndroid( configureKotlin() - val libs = extensions.getByType().named("libs") - dependencies { - add("coreLibraryDesugaring", libs.findLibrary("android-desugarJdkLibs").get()) - - val ktx = libs.findLibrary("androidx-core-ktx").get() - add("implementation", ktx) - - val test = libs.findBundle("test").get() - add("testImplementation", test) - - val androidTest = libs.findBundle("android-test").get() - add("androidTestImplementation", androidTest) + coreLibraryDesugaring("android-desugarJdkLibs") + + implementationPlatform("junit-bom") + testRuntimeOnly("junit-launcher") + testImplementationBundle("test") + androidTestImplementationBundle("android-test") + implementation( + "kotlinx-collections-immutable", + "dagger-core", + "androidx-core-ktx" + ) + ksp("dagger-compiler") + } - val immutableCollection = libs.findLibrary("kotlinx-collections-immutable").get() - add("implementation", immutableCollection) + tasks.withType().configureEach { + useJUnitPlatform() + testLogging { + events("passed", "skipped", "failed") + } + } - val dagger = libs.findLibrary("dagger-core").get() - add("implementation", dagger) - val daggerCompiler = libs.findLibrary("dagger-compiler").get() - add("ksp", daggerCompiler) - } + testOptions { unitTests.isIncludeAndroidResources = true } } private fun Project.getNameSpace( diff --git a/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KoverConfiguration.kt b/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KoverConfiguration.kt index 21fae56b..9e64b612 100644 --- a/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KoverConfiguration.kt +++ b/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KoverConfiguration.kt @@ -2,8 +2,56 @@ package com.stslex93.notes import AppExt.findPluginId import AppExt.libs + +import kotlinx.kover.gradle.plugin.dsl.KoverProjectExtension + import org.gradle.api.Project +import org.gradle.kotlin.dsl.configure + internal fun Project.configureKover() { - pluginManager.apply(libs.findPluginId("kover")) -} \ No newline at end of file + configure { + reports { + total { + html { + onCheck.value(true) + htmlDir.dir("${layout.buildDirectory}/reports/kover/html") + } + } + filters.excludes { + androidGeneratedClasses() + classes(coverageExclusions) + packages("*.di", "*.hilt_aggregated_deps", "build") + annotatedBy("*Generated*", "*Composable") + classes("*Dto", "*Entity", "*Response") + } + } + } +} + +private val coverageExclusions = listOf( + "*.databinding.*", + "*_Impl", + "*_Factory", + "*_MembersInjector", + "Manifest*.*", + "*Activity*.*", + "*Fragment*.*", + "*FXCMApp*.*", + "*View*.*", + "*Adapter*.*", + "*View.class", + "**/R", + "*.R$*", + "R", + "R$*", + "BuildConfig.*", + "*.BuildConfig", + "BuildConfig", + "*_MembersInjector", + "Dagger*Component", + "Dagger*Component*", + "*Module_*Factory", + "*Application", + "*Store" +) \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts index 32ad5c20..e1f0b032 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -22,4 +22,4 @@ buildscript { tasks.register(name = "type", type = Delete::class) { delete(rootProject.buildDir) -} \ No newline at end of file +} diff --git a/core/core/src/test/java/com/stslex93/notes/core/core/ExampleUnitTest.kt b/core/core/src/test/java/com/stslex93/notes/core/core/ExampleUnitTest.kt deleted file mode 100644 index 7e42ea07..00000000 --- a/core/core/src/test/java/com/stslex93/notes/core/core/ExampleUnitTest.kt +++ /dev/null @@ -1,17 +0,0 @@ -package com.stslex93.notes.core.core - -import org.junit.Test - -import org.junit.Assert.* - -/** - * Example local unit test, which will execute on the development machine (host). - * - * See [testing documentation](http://d.android.com/tools/testing). - */ -class ExampleUnitTest { - @Test - fun addition_isCorrect() { - assertEquals(4, 2 + 2) - } -} \ No newline at end of file diff --git a/core/database/build.gradle.kts b/core/database/build.gradle.kts index 9237707a..dde32860 100644 --- a/core/database/build.gradle.kts +++ b/core/database/build.gradle.kts @@ -1,5 +1,6 @@ plugins { id("notes.android.library") + alias(libs.plugins.robolectric.junit5) } dependencies { @@ -8,7 +9,7 @@ dependencies { ksp(libs.androidx.room.compiler) androidTestApi(libs.androidx.room.testing) implementation(libs.androidx.paging.runtime) - implementation("com.google.code.gson:gson:2.10.1") + implementation(libs.google.gson) } ksp { diff --git a/core/database/src/test/java/com/stslex93/notes/core/database/BaseDatabaseTest.kt b/core/database/src/test/java/com/stslex93/notes/core/database/BaseDatabaseTest.kt new file mode 100644 index 00000000..737b64f3 --- /dev/null +++ b/core/database/src/test/java/com/stslex93/notes/core/database/BaseDatabaseTest.kt @@ -0,0 +1,26 @@ +package com.stslex93.notes.core.database + +import android.app.Application +import android.content.Context +import androidx.room.Room +import androidx.test.core.app.ApplicationProvider +import com.stslex93.notes.core.database.database.NoteRoomDatabase + +internal abstract class BaseDatabaseTest { + + protected lateinit var database: NoteRoomDatabase + + open fun initDb() { + val context: Context = ApplicationProvider.getApplicationContext() + database = Room.inMemoryDatabaseBuilder(context, NoteRoomDatabase::class.java) + .allowMainThreadQueries() + .build() + } + + open fun clearDb() { + database.close() + } + + class TestApplication : Application() + +} \ No newline at end of file diff --git a/core/database/src/test/java/com/stslex93/notes/core/database/NoteDaoTest.kt b/core/database/src/test/java/com/stslex93/notes/core/database/NoteDaoTest.kt index a5368b71..a2c2f8c5 100644 --- a/core/database/src/test/java/com/stslex93/notes/core/database/NoteDaoTest.kt +++ b/core/database/src/test/java/com/stslex93/notes/core/database/NoteDaoTest.kt @@ -1,44 +1,39 @@ package com.stslex93.notes.core.database -import android.content.Context import androidx.paging.PagingSource -import androidx.room.Room -import androidx.test.core.app.ApplicationProvider -import com.stslex93.notes.core.database.database.NoteRoomDatabase +import com.ibm.icu.impl.Assert.fail import com.stslex93.notes.core.database.note.NoteDao import com.stslex93.notes.core.database.note.NoteEntity -import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.flow.first -import kotlinx.coroutines.runBlocking -import org.junit.AfterClass -import org.junit.Assert -import org.junit.Before -import org.junit.Test -import org.junit.runner.RunWith -import org.robolectric.RobolectricTestRunner - - -@RunWith(RobolectricTestRunner::class) -class NoteDaoTest { - - private val dao: NoteDao - - init { - val context: Context = ApplicationProvider.getApplicationContext() - database = Room.databaseBuilder( - context, NoteRoomDatabase::class.java, - DATABASE_NAME - ).build() - dao = database.noteDao +import kotlinx.coroutines.test.runTest +import org.junit.jupiter.api.AfterEach +import org.junit.jupiter.api.Assertions.assertEquals +import org.junit.jupiter.api.Assertions.assertNotEquals +import org.junit.jupiter.api.Assertions.assertTrue +import org.junit.jupiter.api.BeforeEach +import org.junit.jupiter.api.Test +import org.junit.jupiter.api.extension.ExtendWith +import org.robolectric.annotation.Config +import tech.apter.junit.jupiter.robolectric.RobolectricExtension + +@ExtendWith(RobolectricExtension::class) +@Config(application = BaseDatabaseTest.TestApplication::class) +internal class NoteDaoTest : BaseDatabaseTest() { + + private val dao: NoteDao get() = database.noteDao + + @BeforeEach + override fun initDb() { + super.initDb() } - @Before - fun beforeTest() = runBlocking(Dispatchers.IO) { - dao.deleteAll() + @AfterEach + override fun clearDb() { + super.clearDb() } @Test - fun getAll() = runBlocking(Dispatchers.IO) { + fun getAll() = runTest { dao.deleteAll() testListOfNotes.forEach { note -> dao.insert(note) @@ -53,88 +48,88 @@ class NoteDaoTest { ) ) val actual = (loadResult as? PagingSource.LoadResult.Page)?.data - Assert.assertEquals(actual, mockedItems) + assertEquals(actual, mockedItems) } @Test - fun getAllNotes() = runBlocking(Dispatchers.IO) { + fun getAllNotes() = runTest { dao.deleteAll() dao.insert(testNote) val notes = dao.getAllNotes() - Assert.assertTrue(notes.isNotEmpty()) + assertTrue(notes.isNotEmpty()) } @Test - fun getNoteFlow() = runBlocking(Dispatchers.IO) { + fun getNoteFlow() = runTest { val expectedNote = testNote.copy( id = testNote.hashCode() ) dao.insert(expectedNote) val compareNote = dao.getNoteFlow(expectedNote.id).first() - Assert.assertEquals(expectedNote, compareNote) + assertEquals(expectedNote, compareNote) } @Test - fun getNote() = runBlocking(Dispatchers.IO) { + fun getNote() = runTest { val expectedNote = testNote.copy( id = testNote.hashCode() ) dao.insert(expectedNote) val compareNote = dao.getNote(expectedNote.id) - Assert.assertEquals(expectedNote, compareNote) + assertEquals(expectedNote, compareNote) } @Test - fun getNotesById() = runBlocking(Dispatchers.IO) { + fun getNotesById() = runTest { testListOfNotes.forEach { dao.insert(it) } val listOfIds = dao.getAllNotes().map { it.id.toString() } if (listOfIds.isEmpty()) { - Assert.fail() + fail("List of ids is empty") } val compareListOfIds = dao.getNotesById(listOfIds).first().map { it.id.toString() } - Assert.assertEquals(listOfIds, compareListOfIds) + assertEquals(listOfIds, compareListOfIds) } @Test - fun insertSingleNote() = runBlocking(Dispatchers.IO) { + fun insertSingleNote() = runTest { val notesSize = dao.getAllNotes().size dao.insert(testNote) val notes = dao.getAllNotes() val notesSizeAssert = notesSize.plus(1) - Assert.assertEquals(notesSizeAssert, notes.size) - Assert.assertTrue(notes.containsCurrentItem) + assertEquals(notesSizeAssert, notes.size) + assertTrue(notes.containsCurrentItem) } @Test - fun deleteNotesById() = runBlocking(Dispatchers.IO) { + fun deleteNotesById() = runTest { testListOfNotes.forEach { dao.insert(it) } val listOfIds = dao.getAllNotes().map { it.id } if (listOfIds.isEmpty()) { - Assert.fail() + fail("List of ids is empty") } testListOfNotes.forEach { dao.insert(it) } dao.deleteNotesById(listOfIds) val allNotes = dao.getAllNotes() val isNotContains = allNotes.isEmpty() || allNotes.any { listOfIds.contains(it.id).not() } - Assert.assertTrue("Notes contains deleted ids", isNotContains) + assertTrue(isNotContains) { "Notes contains deleted ids" } } @Test - fun insertAll() = runBlocking(Dispatchers.IO) { + fun insertAll() = runTest { val beforeInsert = dao.getAllNotes().size testListOfNotes.forEach { dao.insert(it) } val afterInsert = dao.getAllNotes().size - Assert.assertNotEquals(beforeInsert, afterInsert) + assertNotEquals(beforeInsert, afterInsert) } @Test - fun deleteAll() = runBlocking(Dispatchers.IO) { + fun deleteAll() = runTest { val beforeInsert = dao.getAllNotes().size testListOfNotes.forEach { dao.insert(it) } val afterInsert = dao.getAllNotes().size - Assert.assertNotEquals(beforeInsert, afterInsert) + assertNotEquals(beforeInsert, afterInsert) dao.deleteAll() - Assert.assertTrue(dao.getAllNotes().isEmpty()) + assertTrue(dao.getAllNotes().isEmpty()) } private val testListOfNotes: List by lazy { @@ -148,14 +143,4 @@ class NoteDaoTest { NoteEntity(0, "title", "content", System.currentTimeMillis(), emptySet()) } - companion object { - private const val DATABASE_NAME: String = "note_database" - private lateinit var database: NoteRoomDatabase - - @AfterClass - @JvmStatic - fun afterTestsEnd() { - database.close() - } - } } \ No newline at end of file diff --git a/core/database/src/test/java/com/stslex93/notes/core/database/RoomDatabaseTest.kt b/core/database/src/test/java/com/stslex93/notes/core/database/RoomDatabaseTest.kt index 6b0e0fa0..e1f8b5e4 100644 --- a/core/database/src/test/java/com/stslex93/notes/core/database/RoomDatabaseTest.kt +++ b/core/database/src/test/java/com/stslex93/notes/core/database/RoomDatabaseTest.kt @@ -1,46 +1,36 @@ package com.stslex93.notes.core.database -import android.content.Context -import androidx.room.Room -import androidx.test.core.app.ApplicationProvider -import com.stslex93.notes.core.database.database.NoteRoomDatabase -import org.junit.AfterClass -import org.junit.Assert -import org.junit.Test -import org.junit.runner.RunWith -import org.robolectric.RobolectricTestRunner +import org.junit.jupiter.api.AfterEach +import org.junit.jupiter.api.Assertions.assertNotNull +import org.junit.jupiter.api.BeforeEach +import org.junit.jupiter.api.Test +import org.junit.jupiter.api.extension.ExtendWith +import org.robolectric.annotation.Config +import tech.apter.junit.jupiter.robolectric.RobolectricExtension -@RunWith(RobolectricTestRunner::class) -class RoomDatabaseTest { +@ExtendWith(RobolectricExtension::class) +@Config(application = BaseDatabaseTest.TestApplication::class) +internal class RoomDatabaseTest : BaseDatabaseTest() { - init { - val context: Context = ApplicationProvider.getApplicationContext() - database = Room.databaseBuilder( - context, NoteRoomDatabase::class.java, - DATABASE_NAME - ).build() + @BeforeEach + override fun initDb() { + super.initDb() + } + + @AfterEach + override fun clearDb() { + super.clearDb() } @Test fun noteDao() { val noteDao = database.noteDao - Assert.assertNotNull(noteDao) + assertNotNull(noteDao) } @Test fun labelDao() { val labelDao = database.labelDao - Assert.assertNotNull(labelDao) - } - - companion object { - private const val DATABASE_NAME: String = "note_database" - private lateinit var database: NoteRoomDatabase - - @AfterClass - @JvmStatic - fun afterTestsEnd() { - database.close() - } + assertNotNull(labelDao) } } \ No newline at end of file diff --git a/core/label/src/test/java/com/stslex93/notes/core/label/ExampleUnitTest.kt b/core/label/src/test/java/com/stslex93/notes/core/label/ExampleUnitTest.kt deleted file mode 100644 index 61b12dba..00000000 --- a/core/label/src/test/java/com/stslex93/notes/core/label/ExampleUnitTest.kt +++ /dev/null @@ -1,17 +0,0 @@ -package com.stslex93.notes.core.label - -import org.junit.Test - -import org.junit.Assert.* - -/** - * Example local unit test, which will execute on the development machine (host). - * - * See [testing documentation](http://d.android.com/tools/testing). - */ -class ExampleUnitTest { - @Test - fun addition_isCorrect() { - assertEquals(4, 2 + 2) - } -} \ No newline at end of file diff --git a/core/ui/build.gradle.kts b/core/ui/build.gradle.kts index 9f66cd29..f640e547 100644 --- a/core/ui/build.gradle.kts +++ b/core/ui/build.gradle.kts @@ -1,4 +1,4 @@ plugins { id("notes.android.library") id("notes.android.library.compose") -} \ No newline at end of file +} diff --git a/core/ui/src/main/java/com/stslex93/notes/core/ui/Extensions.kt b/core/ui/src/main/java/com/stslex93/notes/core/ui/Extensions.kt index f31fecd5..2c455b72 100644 --- a/core/ui/src/main/java/com/stslex93/notes/core/ui/Extensions.kt +++ b/core/ui/src/main/java/com/stslex93/notes/core/ui/Extensions.kt @@ -2,8 +2,8 @@ package com.stslex93.notes.core.ui import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect -import androidx.compose.ui.platform.LocalLifecycleOwner import androidx.lifecycle.Lifecycle +import androidx.lifecycle.compose.LocalLifecycleOwner import androidx.lifecycle.flowWithLifecycle import androidx.lifecycle.lifecycleScope import kotlinx.collections.immutable.ImmutableSet @@ -12,37 +12,37 @@ import kotlinx.coroutines.flow.SharedFlow import kotlinx.coroutines.flow.launchIn import kotlinx.coroutines.flow.onEach -@Composable -fun SharedFlow.CollectAsEvent( - minActionState: Lifecycle.State = Lifecycle.State.STARTED, - action: suspend (T) -> Unit, -) { - val lifecycleOwner = LocalLifecycleOwner.current - LaunchedEffect(Unit) { - this@CollectAsEvent - .flowWithLifecycle( - lifecycle = lifecycleOwner.lifecycle, - minActiveState = minActionState - ) - .onEach(action) - .launchIn(lifecycleOwner.lifecycleScope) - } -} +object Extensions { -fun ImmutableSet.removeItem( - item: T -): ImmutableSet = this.toMutableSet() - .apply { - remove(item) + @Composable + fun SharedFlow.CollectAsEvent( + minActionState: Lifecycle.State = Lifecycle.State.STARTED, + action: suspend (T) -> Unit, + ) { + val lifecycleOwner = LocalLifecycleOwner.current + LaunchedEffect(Unit) { + this@CollectAsEvent + .flowWithLifecycle( + lifecycle = lifecycleOwner.lifecycle, + minActiveState = minActionState + ) + .onEach(action) + .launchIn(lifecycleOwner.lifecycleScope) + } } - .toImmutableSet() -fun ImmutableSet.addItem( - item: T -): ImmutableSet = this.toMutableSet() - .apply { - add(item) - } - .toImmutableSet() + fun ImmutableSet.removeItem( + item: T + ): ImmutableSet = this.toMutableSet() + .apply { remove(item) } + .toImmutableSet() + + fun ImmutableSet.addItem( + item: T + ): ImmutableSet = this.toMutableSet() + .apply { + add(item) + } + .toImmutableSet() +} -fun emptyImmutableSet(): ImmutableSet = emptySet().toImmutableSet() \ No newline at end of file diff --git a/core/ui/src/test/java/com/stslex93/notes/core/ui/ExampleUnitTest.kt b/core/ui/src/test/java/com/stslex93/notes/core/ui/ExampleUnitTest.kt deleted file mode 100644 index 0cef9776..00000000 --- a/core/ui/src/test/java/com/stslex93/notes/core/ui/ExampleUnitTest.kt +++ /dev/null @@ -1,17 +0,0 @@ -package com.stslex93.notes.core.ui - -import org.junit.Test - -import org.junit.Assert.* - -/** - * Example local unit test, which will execute on the development machine (host). - * - * See [testing documentation](http://d.android.com/tools/testing). - */ -class ExampleUnitTest { - @Test - fun addition_isCorrect() { - assertEquals(4, 2 + 2) - } -} \ No newline at end of file diff --git a/core/ui/src/test/java/com/stslex93/notes/core/ui/ExtensionsTest.kt b/core/ui/src/test/java/com/stslex93/notes/core/ui/ExtensionsTest.kt new file mode 100644 index 00000000..3fafd46c --- /dev/null +++ b/core/ui/src/test/java/com/stslex93/notes/core/ui/ExtensionsTest.kt @@ -0,0 +1,43 @@ +package com.stslex93.notes.core.ui + +import com.stslex93.notes.core.ui.Extensions.addItem +import com.stslex93.notes.core.ui.Extensions.removeItem +import kotlinx.collections.immutable.persistentSetOf +import org.junit.jupiter.api.Assertions +import org.junit.jupiter.api.Test; + +internal class ExtensionsTest { + + @Test + fun `remove item from persistentSet`() { + val testSet = persistentSetOf("1", "2", "3", "4") + val resultSet = testSet.removeItem("2") + Assertions.assertTrue(resultSet.size == 3) + Assertions.assertEquals(persistentSetOf("1", "3", "4"), resultSet) + } + + @Test + fun `remove item which don't exist in persistentSet`() { + val testSet = persistentSetOf("1", "2", "3", "4") + val resultSet = testSet.removeItem("10") + Assertions.assertTrue(resultSet.size == 4) + Assertions.assertEquals(persistentSetOf("1", "2", "3", "4"), resultSet) + } + + @Test + fun `add new item to persistentSet`() { + val testSet = persistentSetOf("1", "2", "3") + val resultSet = testSet.addItem("4") + Assertions.assertTrue(resultSet.size == 4) + Assertions.assertEquals(persistentSetOf("1", "2", "3", "4"), resultSet) + } + + @Test + fun `add item which already exist to persistentSet`() { + val testSet = persistentSetOf("1", "2", "3") + val resultSet = testSet.addItem("2") + Assertions.assertTrue(resultSet.size == 3) + Assertions.assertEquals(persistentSetOf("1", "2", "3"), resultSet) + } + +} \ No newline at end of file diff --git a/feature/edit-label/src/main/java/com/stslex93/notes/feature/edit_label/navigation/graph/EditLabelGraph.kt b/feature/edit-label/src/main/java/com/stslex93/notes/feature/edit_label/navigation/graph/EditLabelGraph.kt index 6fc76f6a..7204fa70 100644 --- a/feature/edit-label/src/main/java/com/stslex93/notes/feature/edit_label/navigation/graph/EditLabelGraph.kt +++ b/feature/edit-label/src/main/java/com/stslex93/notes/feature/edit_label/navigation/graph/EditLabelGraph.kt @@ -11,7 +11,7 @@ import com.stslex93.notes.core.navigation.model.AppArguments import com.stslex93.notes.core.navigation.model.AppDestination import com.stslex93.notes.core.navigation.utils.NavExt.composableArguments import com.stslex93.notes.core.navigation.utils.NavExt.parseArguments -import com.stslex93.notes.core.ui.CollectAsEvent +import com.stslex93.notes.core.ui.Extensions.CollectAsEvent import com.stslex93.notes.feature.edit_label.di.initComponent import com.stslex93.notes.feature.edit_label.ui.EditLabelScreen import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore diff --git a/feature/edit-label/src/main/java/com/stslex93/notes/feature/edit_label/ui/EditLabelScreen.kt b/feature/edit-label/src/main/java/com/stslex93/notes/feature/edit_label/ui/EditLabelScreen.kt index 0430cf7a..7dea9f44 100644 --- a/feature/edit-label/src/main/java/com/stslex93/notes/feature/edit_label/ui/EditLabelScreen.kt +++ b/feature/edit-label/src/main/java/com/stslex93/notes/feature/edit_label/ui/EditLabelScreen.kt @@ -31,12 +31,12 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.paging.PagingData import androidx.paging.compose.collectAsLazyPagingItems import androidx.paging.compose.itemKey -import com.stslex93.notes.core.ui.emptyImmutableSet import com.stslex93.notes.core.ui.theme.AppDimens import com.stslex93.notes.core.ui.theme.AppTheme import com.stslex93.notes.feature.edit_label.ui.model.Label import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.Action import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.State +import kotlinx.collections.immutable.persistentSetOf import kotlinx.coroutines.flow.MutableStateFlow @OptIn(ExperimentalMaterial3Api::class) @@ -178,7 +178,7 @@ fun EditLabelScreenPreview() { val items = MutableStateFlow(PagingData.from(labels)) EditLabelScreen( state = State( - notesIds = emptyImmutableSet(), + notesIds = persistentSetOf(), query = "dfdfdfdfdf", labels = { items } ), diff --git a/feature/edit-label/src/main/java/com/stslex93/notes/feature/edit_label/ui/store/EditLabelStoreImpl.kt b/feature/edit-label/src/main/java/com/stslex93/notes/feature/edit_label/ui/store/EditLabelStoreImpl.kt index 7323a4ca..940d3f1d 100644 --- a/feature/edit-label/src/main/java/com/stslex93/notes/feature/edit_label/ui/store/EditLabelStoreImpl.kt +++ b/feature/edit-label/src/main/java/com/stslex93/notes/feature/edit_label/ui/store/EditLabelStoreImpl.kt @@ -5,7 +5,6 @@ import androidx.paging.cachedIn import androidx.paging.map import com.stslex.aproselection.core.core.Logger import com.stslex93.notes.core.ui.base.store.BaseStoreImpl -import com.stslex93.notes.core.ui.emptyImmutableSet import com.stslex93.notes.feature.edit_label.domain.interactor.EditLabelInteractor import com.stslex93.notes.feature.edit_label.domain.model.LabelDomain import com.stslex93.notes.feature.edit_label.ui.model.Label @@ -13,6 +12,7 @@ import com.stslex93.notes.feature.edit_label.ui.model.toUi import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.Action import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.Event import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.State +import kotlinx.collections.immutable.persistentSetOf import kotlinx.collections.immutable.toImmutableSet import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.ExperimentalCoroutinesApi @@ -33,7 +33,7 @@ class EditLabelStoreImpl @Inject constructor( ) : EditLabelStore, BaseStoreImpl() { override val initialState: State = State( - notesIds = emptyImmutableSet(), + notesIds = persistentSetOf(), query = "", labels = ::labels ) diff --git a/feature/edit-label/src/test/java/com/stslex93/notes/feature/edit_label/ExampleUnitTest.kt b/feature/edit-label/src/test/java/com/stslex93/notes/feature/edit_label/ExampleUnitTest.kt deleted file mode 100644 index 3b88d0d1..00000000 --- a/feature/edit-label/src/test/java/com/stslex93/notes/feature/edit_label/ExampleUnitTest.kt +++ /dev/null @@ -1,17 +0,0 @@ -package com.stslex93.notes.feature.edit_label - -import org.junit.Test - -import org.junit.Assert.* - -/** - * Example local unit test, which will execute on the development machine (host). - * - * See [testing documentation](http://d.android.com/tools/testing). - */ -class ExampleUnitTest { - @Test - fun addition_isCorrect() { - assertEquals(4, 2 + 2) - } -} \ No newline at end of file diff --git a/feature/edit/src/main/java/com/stslex93/notes/feature/edit/ui/store/EditStoreImpl.kt b/feature/edit/src/main/java/com/stslex93/notes/feature/edit/ui/store/EditStoreImpl.kt index eda3981c..3424094f 100644 --- a/feature/edit/src/main/java/com/stslex93/notes/feature/edit/ui/store/EditStoreImpl.kt +++ b/feature/edit/src/main/java/com/stslex93/notes/feature/edit/ui/store/EditStoreImpl.kt @@ -1,7 +1,6 @@ package com.stslex93.notes.feature.edit.ui.store import com.stslex93.notes.core.ui.base.store.BaseStoreImpl -import com.stslex93.notes.core.ui.emptyImmutableSet import com.stslex93.notes.feature.edit.domain.interactor.NoteEditInteractor import com.stslex93.notes.feature.edit.ui.model.Note import com.stslex93.notes.feature.edit.ui.model.toDomain @@ -9,6 +8,7 @@ import com.stslex93.notes.feature.edit.ui.model.toPresentation import com.stslex93.notes.feature.edit.ui.store.EditStore.Action import com.stslex93.notes.feature.edit.ui.store.EditStore.Event import com.stslex93.notes.feature.edit.ui.store.EditStore.State +import kotlinx.collections.immutable.persistentSetOf import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.flowOn @@ -26,7 +26,7 @@ class EditStoreImpl @Inject constructor( uuid = 0, title = "", content = "", - labels = emptyImmutableSet(), + labels = persistentSetOf(), timestamp = System.currentTimeMillis() ) ) diff --git a/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/HomeScreen.kt b/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/HomeScreen.kt index 85c221d1..ca2ebb2c 100644 --- a/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/HomeScreen.kt +++ b/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/HomeScreen.kt @@ -13,7 +13,6 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.paging.PagingData import androidx.paging.compose.LazyPagingItems import androidx.paging.compose.collectAsLazyPagingItems -import com.stslex93.notes.core.ui.emptyImmutableSet import com.stslex93.notes.core.ui.theme.PreviewTheme import com.stslex93.notes.feature.home.ui.components.HomeScreenFloatingButton import com.stslex93.notes.feature.home.ui.components.HomeScreenNotes @@ -21,7 +20,7 @@ import com.stslex93.notes.feature.home.ui.components.HomeScreenToolbar import com.stslex93.notes.feature.home.ui.model.Note import com.stslex93.notes.feature.home.ui.store.HomeStore.Action import kotlinx.collections.immutable.ImmutableSet -import kotlinx.collections.immutable.toImmutableSet +import kotlinx.collections.immutable.persistentSetOf import kotlinx.coroutines.flow.MutableStateFlow @Composable @@ -90,14 +89,14 @@ fun HomeScreenPreview() { title = "title $index", content = "content: $index", timestamp = 0, - labels = emptyImmutableSet() + labels = persistentSetOf() ) }.toList() ) ).collectAsLazyPagingItems() HomeScreen( query = "", - selectedNotes = setOf(1).toImmutableSet(), + selectedNotes = persistentSetOf(1), notes = notes, sendAction = {} ) diff --git a/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/components/HomeScreenNotes.kt b/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/components/HomeScreenNotes.kt index f4407eee..ed6ca1a3 100644 --- a/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/components/HomeScreenNotes.kt +++ b/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/components/HomeScreenNotes.kt @@ -11,11 +11,11 @@ import androidx.paging.PagingData import androidx.paging.compose.LazyPagingItems import androidx.paging.compose.collectAsLazyPagingItems import androidx.paging.compose.itemKey -import com.stslex93.notes.core.ui.emptyImmutableSet import com.stslex93.notes.core.ui.theme.AppTheme import com.stslex93.notes.feature.home.ui.model.Label import com.stslex93.notes.feature.home.ui.model.Note import kotlinx.collections.immutable.ImmutableSet +import kotlinx.collections.immutable.persistentSetOf import kotlinx.collections.immutable.toImmutableSet import kotlinx.coroutines.flow.MutableStateFlow @@ -58,7 +58,7 @@ fun HomeScreenNotesPreview() { uuid = "uuid$it", title = "label$it ".repeat(it.coerceAtLeast(1)), ) - }.toSet().toImmutableSet() + }.toImmutableSet() val notes = Array(10) { Note( id = it, @@ -75,7 +75,7 @@ fun HomeScreenNotesPreview() { HomeScreenNotes( items = items, - selectedItems = emptyImmutableSet(), + selectedItems = persistentSetOf(), onClick = {}, onLingClick = {} ) diff --git a/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/init/HomeScreeInit.kt b/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/init/HomeScreeInit.kt index 4e30ad4b..760e1148 100644 --- a/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/init/HomeScreeInit.kt +++ b/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/init/HomeScreeInit.kt @@ -7,7 +7,7 @@ import androidx.compose.runtime.getValue import androidx.compose.runtime.remember import androidx.compose.ui.Modifier import androidx.paging.compose.collectAsLazyPagingItems -import com.stslex93.notes.core.ui.CollectAsEvent +import com.stslex93.notes.core.ui.Extensions.CollectAsEvent import com.stslex93.notes.feature.home.ui.HomeScreen import com.stslex93.notes.feature.home.ui.HomeViewModel import com.stslex93.notes.feature.home.ui.store.HomeStore diff --git a/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/store/HomeStoreImpl.kt b/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/store/HomeStoreImpl.kt index 72ece9eb..1edcf255 100644 --- a/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/store/HomeStoreImpl.kt +++ b/feature/home/src/main/java/com/stslex93/notes/feature/home/ui/store/HomeStoreImpl.kt @@ -3,16 +3,16 @@ package com.stslex93.notes.feature.home.ui.store import androidx.paging.PagingData import androidx.paging.cachedIn import androidx.paging.map -import com.stslex93.notes.core.ui.addItem +import com.stslex93.notes.core.ui.Extensions.addItem +import com.stslex93.notes.core.ui.Extensions.removeItem import com.stslex93.notes.core.ui.base.store.BaseStoreImpl -import com.stslex93.notes.core.ui.emptyImmutableSet -import com.stslex93.notes.core.ui.removeItem import com.stslex93.notes.feature.home.domain.interactor.HomeInteractor import com.stslex93.notes.feature.home.ui.model.Note import com.stslex93.notes.feature.home.ui.model.toUI import com.stslex93.notes.feature.home.ui.store.HomeStore.Action import com.stslex93.notes.feature.home.ui.store.HomeStore.Event import com.stslex93.notes.feature.home.ui.store.HomeStore.State +import kotlinx.collections.immutable.persistentSetOf import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.flow.MutableStateFlow @@ -32,7 +32,7 @@ class HomeStoreImpl @Inject constructor( override val initialState = State( query = "", - selectedNotes = emptyImmutableSet(), + selectedNotes = persistentSetOf(), notes = ::notes ) @@ -77,7 +77,7 @@ class HomeStoreImpl @Inject constructor( private fun clearSelection() { updateState { currentState -> currentState.copy( - selectedNotes = emptyImmutableSet(), + selectedNotes = persistentSetOf(), query = "" ) } @@ -89,7 +89,7 @@ class HomeStoreImpl @Inject constructor( scope.launch(Dispatchers.IO) { interactor.deleteNotes(items.toList()) updateState { currentState -> - currentState.copy(selectedNotes = emptyImmutableSet()) + currentState.copy(selectedNotes = persistentSetOf()) } } } else { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index f2442a6d..b7c579c1 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -25,16 +25,16 @@ paging = "3.3.6" room = "2.7.2" ksp = "2.2.10-2.0.2" -mockito = "5.19.0" - dagger = "2.57.1" -junit = "4.13.2" +junit = "5.13.4" +mockk = "1.14.5" androidxJunit = "1.3.0" espresso = "3.7.0" robolectric = "4.16" androidxTest = "1.7.0" kover = "0.9.1" +gson = "2.10.1" [libraries] android-desugarJdkLibs = { module = "com.android.tools:desugar_jdk_libs", version.ref = "androidDesugarJdkLibs" } android-gradlePlugin = { module = "com.android.tools.build:gradle", version.ref = "androidGradlePlugin" } @@ -42,6 +42,7 @@ kotlin-gradlePlugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", ve kotlin-serialization = { module = "org.jetbrains.kotlin:kotlin-serialization", version.ref = "kotlin" } composeCompiler-gradlePlugin = { group = "org.jetbrains.compose", name = "compose-gradle-plugin", version.ref = "composeGradle" } android-tools-common = { group = "com.android.tools", name = "common", version.ref = "androidTools" } +kover-gradlePlugin = { module = "org.jetbrains.kotlinx:kover-gradle-plugin", version.ref = "kover" } kotlinx-collections-immutable = { group = "org.jetbrains.kotlinx", name = "kotlinx-collections-immutable", version.ref = "immutableCollection" } @@ -76,8 +77,14 @@ kotlinx-serialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx- accompanist-placeholder = { module = "com.google.accompanist:accompanist-placeholder", version.ref = "accompanist" } accompanist-systemuicontroller = { module = "com.google.accompanist:accompanist-systemuicontroller", version.ref = "accompanist" } -junit = { group = "junit", name = "junit", version.ref = "junit" } -mockito = { group = "org.mockito", name = "mockito-core", version.ref = "mockito" } +google-gson = { module = "com.google.code.gson:gson", version.ref = "gson" } + +junit-bom = { group = "org.junit", name = "junit-bom", version.ref = "junit" } +junit-jupiter = { group = "org.junit.jupiter", name = "junit-jupiter" } +junit-launcher = { group = "org.junit.platform", name = "junit-platform-launcher" } +junit-vintageEngine = { group = "org.junit.vintage", name = "junit-vintage-engine" } +mockk-android = { group = "io.mockk", name = "mockk-android", version.ref = "mockk" } +mockk-agent = { group = "io.mockk", name = "mockk-agent", version.ref = "mockk" } androidx-junit = { group = "androidx.test.ext", name = "junit", version.ref = "androidxJunit" } androidx-espresso = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "espresso" } robolectric = { group = "org.robolectric", name = "robolectric", version.ref = "robolectric" } @@ -100,7 +107,9 @@ application = { id = "com.android.application", version.ref = "androidGradlePlug library = { id = "com.android.library", version.ref = "androidGradlePlugin" } ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" } composeCompiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } -kover = {id = "org.jetbrains.kotlinx.kover", version.ref = "kover"} +kover = { id = "org.jetbrains.kotlinx.kover", version.ref = "kover" } +robolectric-junit5 = { id = "tech.apter.junit5.jupiter.robolectric-extension-gradle-plugin", version = "0.9.8" } + [bundles] lifecycle = [ "lifecycle-compose", @@ -125,17 +134,18 @@ compose = [ ] android-test = [ - "junit", + "junit-jupiter", "androidx-junit", "androidx-espresso" ] test = [ - "mockito", - "junit", + "mockk-android", + "mockk-agent", + "junit-jupiter", "robolectric", "androidx-test", - "coroutine-test" + "coroutine-test", ] room = [ From 075753c81280503ce9e77b2556e310dbc3466501 Mon Sep 17 00:00:00 2001 From: stslex Date: Sat, 30 Aug 2025 17:30:07 +0300 Subject: [PATCH 3/5] refactor gradle caching - fix ci (robolectric dep) --- .../{android_jobs.yml => android_build.yml} | 17 +++++++++-------- .github/workflows/testReportJob.yml | 7 +++++-- .../src/main/kotlin/AndroidLibraryPlugin.kt | 1 + build.gradle.kts | 3 ++- core/database/build.gradle.kts | 1 - gradle/libs.versions.toml | 5 +++-- 6 files changed, 20 insertions(+), 14 deletions(-) rename .github/workflows/{android_jobs.yml => android_build.yml} (74%) diff --git a/.github/workflows/android_jobs.yml b/.github/workflows/android_build.yml similarity index 74% rename from .github/workflows/android_jobs.yml rename to .github/workflows/android_build.yml index 9744c1db..037b56dd 100644 --- a/.github/workflows/android_jobs.yml +++ b/.github/workflows/android_build.yml @@ -37,14 +37,15 @@ jobs: - name: Cache Gradle uses: actions/cache@v4 with: - path: ~/.gradle/caches/ - key: cache-clean-gradle-${{ matrix.os }}-${{ matrix.jdk }} - - - name: Cache Gradle Wrapper - uses: actions/cache@v4 - with: - path: ~/.gradle/wrapper/ - key: cache-clean-wrapper-${{ matrix.os }}-${{ matrix.jdk }} + path: | + ~/.gradle/caches + ~/.gradle/wrapper + ~/gradle + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', 'gradle/wrapper/gradle-wrapper.properties', 'gradle/libs.versions.toml') }} + restore-keys: | + ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', 'gradle/wrapper/gradle-wrapper.properties', 'gradle/libs.versions.toml') }} + ${{ runner.os }}-gradle- + ${{ runner.os }}- - name: Grant execute permission for gradlew run: chmod +x gradlew diff --git a/.github/workflows/testReportJob.yml b/.github/workflows/testReportJob.yml index 2d0db7b7..9fdbfd30 100644 --- a/.github/workflows/testReportJob.yml +++ b/.github/workflows/testReportJob.yml @@ -36,9 +36,12 @@ jobs: path: | ~/.gradle/caches ~/.gradle/wrapper - key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} + ~/gradle + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', 'gradle/wrapper/gradle-wrapper.properties', 'gradle/libs.versions.toml') }} restore-keys: | - ${{ runner.os }}-gradle-. + ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', 'gradle/wrapper/gradle-wrapper.properties', 'gradle/libs.versions.toml') }} + ${{ runner.os }}-gradle- + ${{ runner.os }}- - name: Configure Keystore env: diff --git a/build-logic/dependencies/src/main/kotlin/AndroidLibraryPlugin.kt b/build-logic/dependencies/src/main/kotlin/AndroidLibraryPlugin.kt index 98a9d112..790e3b57 100644 --- a/build-logic/dependencies/src/main/kotlin/AndroidLibraryPlugin.kt +++ b/build-logic/dependencies/src/main/kotlin/AndroidLibraryPlugin.kt @@ -15,6 +15,7 @@ class AndroidLibraryPlugin : Plugin { apply(libs.findPluginId("kotlin")) apply(libs.findPluginId("ksp")) apply(libs.findPluginId("kover")) + apply(libs.findPluginId("robolectric-junit5")) } extensions.configure { diff --git a/build.gradle.kts b/build.gradle.kts index e1f0b032..65357a74 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -6,6 +6,7 @@ plugins { alias(libs.plugins.ksp) apply false alias(libs.plugins.composeCompiler) apply false alias(libs.plugins.kover) + alias(libs.plugins.robolectric.junit5) apply false } buildscript { @@ -21,5 +22,5 @@ buildscript { } tasks.register(name = "type", type = Delete::class) { - delete(rootProject.buildDir) + delete(layout.buildDirectory) } diff --git a/core/database/build.gradle.kts b/core/database/build.gradle.kts index dde32860..69d5006d 100644 --- a/core/database/build.gradle.kts +++ b/core/database/build.gradle.kts @@ -1,6 +1,5 @@ plugins { id("notes.android.library") - alias(libs.plugins.robolectric.junit5) } dependencies { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index b7c579c1..69c2b5d6 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -34,7 +34,8 @@ espresso = "3.7.0" robolectric = "4.16" androidxTest = "1.7.0" kover = "0.9.1" -gson = "2.10.1" +gson = "2.13.1" +robolectricExt = "0.9.0" [libraries] android-desugarJdkLibs = { module = "com.android.tools:desugar_jdk_libs", version.ref = "androidDesugarJdkLibs" } android-gradlePlugin = { module = "com.android.tools.build:gradle", version.ref = "androidGradlePlugin" } @@ -108,7 +109,7 @@ library = { id = "com.android.library", version.ref = "androidGradlePlugin" } ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" } composeCompiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } kover = { id = "org.jetbrains.kotlinx.kover", version.ref = "kover" } -robolectric-junit5 = { id = "tech.apter.junit5.jupiter.robolectric-extension-gradle-plugin", version = "0.9.8" } +robolectric-junit5 = { id = "tech.apter.junit5.jupiter.robolectric-extension-gradle-plugin", version.ref = "robolectricExt" } [bundles] lifecycle = [ From df40e599f43713525830732d5d224a4b50d2f4d3 Mon Sep 17 00:00:00 2001 From: stslex Date: Sat, 30 Aug 2025 17:53:35 +0300 Subject: [PATCH 4/5] fix junit bom impl in convention --- .../dependencies/src/main/kotlin/AppExt.kt | 35 ++++++++++++------- .../com.stslex93.notes/KotlinAndroid.kt | 6 ++-- 2 files changed, 27 insertions(+), 14 deletions(-) diff --git a/build-logic/dependencies/src/main/kotlin/AppExt.kt b/build-logic/dependencies/src/main/kotlin/AppExt.kt index d4c183ed..aa61062e 100644 --- a/build-logic/dependencies/src/main/kotlin/AppExt.kt +++ b/build-logic/dependencies/src/main/kotlin/AppExt.kt @@ -52,7 +52,29 @@ object AppExt { dependencies { alias.forEach { add( - "debugImplementation", + "implementation", + platform(libs.findLibrary(it).get()) + ) + } + } + } + + fun Project.testImplementationPlatform(vararg alias: String) { + dependencies { + alias.forEach { + add( + "testImplementation", + platform(libs.findLibrary(it).get()) + ) + } + } + } + + fun Project.androidTestImplementationPlatform(vararg alias: String) { + dependencies { + alias.forEach { + add( + "androidTestImplementation", platform(libs.findLibrary(it).get()) ) } @@ -92,17 +114,6 @@ object AppExt { } } - fun Project.androidTestImplementationPlatform(vararg alias: String) { - dependencies { - alias.forEach { - add( - "androidTestImplementation", - dependencies.platform(libs.findLibrary(it).get()) - ) - } - } - } - /** * Find the library by alias */ diff --git a/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KotlinAndroid.kt b/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KotlinAndroid.kt index 8685783c..71fdd556 100644 --- a/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KotlinAndroid.kt +++ b/build-logic/dependencies/src/main/kotlin/com.stslex93.notes/KotlinAndroid.kt @@ -2,13 +2,14 @@ package com.stslex93.notes import AppExt.APP_PREFIX import AppExt.androidTestImplementationBundle +import AppExt.androidTestImplementationPlatform import AppExt.coreLibraryDesugaring import AppExt.findVersionInt import AppExt.implementation -import AppExt.implementationPlatform import AppExt.ksp import AppExt.libs import AppExt.testImplementationBundle +import AppExt.testImplementationPlatform import AppExt.testRuntimeOnly import com.android.build.api.dsl.CommonExtension import com.android.build.gradle.AppExtension @@ -50,7 +51,8 @@ internal fun Project.configureKotlinAndroid( dependencies { coreLibraryDesugaring("android-desugarJdkLibs") - implementationPlatform("junit-bom") + testImplementationPlatform("junit-bom") + androidTestImplementationPlatform("junit-bom") testRuntimeOnly("junit-launcher") testImplementationBundle("test") androidTestImplementationBundle("android-test") From 3f5fe1d7b9105cf8e801aa8be1f32c2d932b7860 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 30 Aug 2025 15:20:31 +0000 Subject: [PATCH 5/5] Add changes --- docs/reports/css/coverage.css | 26 +- docs/reports/css/highlight-idea.css | 153 -- docs/reports/css/idea.min.css | 118 ++ docs/reports/index.html | 1438 +++++++++++++++- docs/reports/index_SORT_BY_BLOCK.html | 1438 +++++++++++++++- docs/reports/index_SORT_BY_BLOCK_DESC.html | 1440 ++++++++++++++++- docs/reports/index_SORT_BY_CLASS.html | 1438 +++++++++++++++- docs/reports/index_SORT_BY_CLASS_DESC.html | 1436 +++++++++++++++- docs/reports/index_SORT_BY_LINE.html | 1438 +++++++++++++++- docs/reports/index_SORT_BY_LINE_DESC.html | 1436 +++++++++++++++- docs/reports/index_SORT_BY_METHOD.html | 1438 +++++++++++++++- docs/reports/index_SORT_BY_METHOD_DESC.html | 1436 +++++++++++++++- docs/reports/index_SORT_BY_NAME_DESC.html | 1436 +++++++++++++++- docs/reports/index_SORT_BY_STATEMENT.html | 1438 +++++++++++++++- .../reports/index_SORT_BY_STATEMENT_DESC.html | 1436 +++++++++++++++- docs/reports/js/highlight.min.js | 1388 ++++++++++++++++ docs/reports/js/highlight.pack.js | 1 - .../js/highlightjs-line-numbers.min.js | 24 + docs/reports/ns-1/index.html | 81 +- docs/reports/ns-1/index_SORT_BY_BLOCK.html | 81 +- .../ns-1/index_SORT_BY_BLOCK_DESC.html | 81 +- docs/reports/ns-1/index_SORT_BY_CLASS.html | 81 +- .../ns-1/index_SORT_BY_CLASS_DESC.html | 81 +- docs/reports/ns-1/index_SORT_BY_LINE.html | 81 +- .../reports/ns-1/index_SORT_BY_LINE_DESC.html | 81 +- docs/reports/ns-1/index_SORT_BY_METHOD.html | 81 +- .../ns-1/index_SORT_BY_METHOD_DESC.html | 81 +- .../reports/ns-1/index_SORT_BY_NAME_DESC.html | 81 +- .../reports/ns-1/index_SORT_BY_STATEMENT.html | 81 +- .../ns-1/index_SORT_BY_STATEMENT_DESC.html | 81 +- docs/reports/ns-1/sources/source-1.html | 74 +- docs/reports/ns-1/sources/source-2.html | 197 --- docs/reports/ns-10/index.html | 177 ++ docs/reports/ns-10/index_SORT_BY_BLOCK.html | 177 ++ .../ns-10/index_SORT_BY_BLOCK_DESC.html | 177 ++ docs/reports/ns-10/index_SORT_BY_CLASS.html | 177 ++ .../ns-10/index_SORT_BY_CLASS_DESC.html | 177 ++ docs/reports/ns-10/index_SORT_BY_LINE.html | 177 ++ .../ns-10/index_SORT_BY_LINE_DESC.html | 177 ++ docs/reports/ns-10/index_SORT_BY_METHOD.html | 177 ++ .../ns-10/index_SORT_BY_METHOD_DESC.html | 177 ++ .../ns-10/index_SORT_BY_NAME_DESC.html | 177 ++ .../ns-10/index_SORT_BY_STATEMENT.html | 177 ++ .../ns-10/index_SORT_BY_STATEMENT_DESC.html | 177 ++ docs/reports/ns-10/sources/source-1.html | 282 ++++ docs/reports/ns-10/sources/source-2.html | 135 ++ docs/reports/ns-11/index.html | 177 ++ docs/reports/ns-11/index_SORT_BY_BLOCK.html | 177 ++ .../ns-11/index_SORT_BY_BLOCK_DESC.html | 177 ++ docs/reports/ns-11/index_SORT_BY_CLASS.html | 177 ++ .../ns-11/index_SORT_BY_CLASS_DESC.html | 177 ++ docs/reports/ns-11/index_SORT_BY_LINE.html | 177 ++ .../ns-11/index_SORT_BY_LINE_DESC.html | 177 ++ docs/reports/ns-11/index_SORT_BY_METHOD.html | 177 ++ .../ns-11/index_SORT_BY_METHOD_DESC.html | 177 ++ .../ns-11/index_SORT_BY_NAME_DESC.html | 177 ++ .../ns-11/index_SORT_BY_STATEMENT.html | 177 ++ .../ns-11/index_SORT_BY_STATEMENT_DESC.html | 177 ++ docs/reports/ns-11/sources/source-1.html | 195 +++ docs/reports/ns-11/sources/source-2.html | 85 + docs/reports/ns-12/index.html | 249 +++ docs/reports/ns-12/index_SORT_BY_BLOCK.html | 249 +++ .../ns-12/index_SORT_BY_BLOCK_DESC.html | 249 +++ docs/reports/ns-12/index_SORT_BY_CLASS.html | 249 +++ .../ns-12/index_SORT_BY_CLASS_DESC.html | 249 +++ docs/reports/ns-12/index_SORT_BY_LINE.html | 249 +++ .../ns-12/index_SORT_BY_LINE_DESC.html | 249 +++ docs/reports/ns-12/index_SORT_BY_METHOD.html | 249 +++ .../ns-12/index_SORT_BY_METHOD_DESC.html | 249 +++ .../ns-12/index_SORT_BY_NAME_DESC.html | 249 +++ .../ns-12/index_SORT_BY_STATEMENT.html | 249 +++ .../ns-12/index_SORT_BY_STATEMENT_DESC.html | 249 +++ docs/reports/ns-12/sources/source-1.html | 127 ++ docs/reports/ns-12/sources/source-2.html | 152 ++ docs/reports/ns-12/sources/source-3.html | 130 ++ docs/reports/ns-13/index.html | 213 +++ docs/reports/ns-13/index_SORT_BY_BLOCK.html | 213 +++ .../ns-13/index_SORT_BY_BLOCK_DESC.html | 213 +++ docs/reports/ns-13/index_SORT_BY_CLASS.html | 213 +++ .../ns-13/index_SORT_BY_CLASS_DESC.html | 213 +++ docs/reports/ns-13/index_SORT_BY_LINE.html | 213 +++ .../ns-13/index_SORT_BY_LINE_DESC.html | 213 +++ docs/reports/ns-13/index_SORT_BY_METHOD.html | 213 +++ .../ns-13/index_SORT_BY_METHOD_DESC.html | 213 +++ .../ns-13/index_SORT_BY_NAME_DESC.html | 213 +++ .../ns-13/index_SORT_BY_STATEMENT.html | 213 +++ .../ns-13/index_SORT_BY_STATEMENT_DESC.html | 213 +++ docs/reports/ns-13/sources/source-1.html | 134 ++ docs/reports/ns-13/sources/source-2.html | 148 ++ docs/reports/ns-13/sources/source-3.html | 207 +++ docs/reports/ns-14/index.html | 177 ++ docs/reports/ns-14/index_SORT_BY_BLOCK.html | 177 ++ .../ns-14/index_SORT_BY_BLOCK_DESC.html | 177 ++ docs/reports/ns-14/index_SORT_BY_CLASS.html | 177 ++ .../ns-14/index_SORT_BY_CLASS_DESC.html | 177 ++ docs/reports/ns-14/index_SORT_BY_LINE.html | 177 ++ .../ns-14/index_SORT_BY_LINE_DESC.html | 177 ++ docs/reports/ns-14/index_SORT_BY_METHOD.html | 177 ++ .../ns-14/index_SORT_BY_METHOD_DESC.html | 177 ++ .../ns-14/index_SORT_BY_NAME_DESC.html | 177 ++ .../ns-14/index_SORT_BY_STATEMENT.html | 177 ++ .../ns-14/index_SORT_BY_STATEMENT_DESC.html | 177 ++ docs/reports/ns-14/sources/source-1.html | 134 ++ docs/reports/ns-14/sources/source-2.html | 210 +++ docs/reports/ns-15/index.html | 177 ++ docs/reports/ns-15/index_SORT_BY_BLOCK.html | 177 ++ .../ns-15/index_SORT_BY_BLOCK_DESC.html | 177 ++ docs/reports/ns-15/index_SORT_BY_CLASS.html | 177 ++ .../ns-15/index_SORT_BY_CLASS_DESC.html | 177 ++ docs/reports/ns-15/index_SORT_BY_LINE.html | 177 ++ .../ns-15/index_SORT_BY_LINE_DESC.html | 177 ++ docs/reports/ns-15/index_SORT_BY_METHOD.html | 177 ++ .../ns-15/index_SORT_BY_METHOD_DESC.html | 177 ++ .../ns-15/index_SORT_BY_NAME_DESC.html | 177 ++ .../ns-15/index_SORT_BY_STATEMENT.html | 177 ++ .../ns-15/index_SORT_BY_STATEMENT_DESC.html | 177 ++ docs/reports/ns-15/sources/source-1.html | 206 +++ docs/reports/ns-15/sources/source-2.html | 131 ++ docs/reports/ns-16/index.html | 249 +++ docs/reports/ns-16/index_SORT_BY_BLOCK.html | 249 +++ .../ns-16/index_SORT_BY_BLOCK_DESC.html | 249 +++ docs/reports/ns-16/index_SORT_BY_CLASS.html | 249 +++ .../ns-16/index_SORT_BY_CLASS_DESC.html | 249 +++ docs/reports/ns-16/index_SORT_BY_LINE.html | 249 +++ .../ns-16/index_SORT_BY_LINE_DESC.html | 249 +++ docs/reports/ns-16/index_SORT_BY_METHOD.html | 249 +++ .../ns-16/index_SORT_BY_METHOD_DESC.html | 249 +++ .../ns-16/index_SORT_BY_NAME_DESC.html | 249 +++ .../ns-16/index_SORT_BY_STATEMENT.html | 249 +++ .../ns-16/index_SORT_BY_STATEMENT_DESC.html | 249 +++ docs/reports/ns-16/sources/source-1.html | 130 ++ docs/reports/ns-16/sources/source-2.html | 134 ++ docs/reports/ns-16/sources/source-3.html | 146 ++ docs/reports/ns-17/index.html | 234 +++ docs/reports/ns-17/index_SORT_BY_BLOCK.html | 234 +++ .../ns-17/index_SORT_BY_BLOCK_DESC.html | 234 +++ docs/reports/ns-17/index_SORT_BY_CLASS.html | 234 +++ .../ns-17/index_SORT_BY_CLASS_DESC.html | 234 +++ docs/reports/ns-17/index_SORT_BY_LINE.html | 234 +++ .../ns-17/index_SORT_BY_LINE_DESC.html | 234 +++ docs/reports/ns-17/index_SORT_BY_METHOD.html | 234 +++ .../ns-17/index_SORT_BY_METHOD_DESC.html | 234 +++ .../ns-17/index_SORT_BY_NAME_DESC.html | 234 +++ .../ns-17/index_SORT_BY_STATEMENT.html | 234 +++ .../ns-17/index_SORT_BY_STATEMENT_DESC.html | 234 +++ docs/reports/ns-17/sources/source-1.html | 272 ++++ docs/reports/ns-17/sources/source-2.html | 298 ++++ docs/reports/ns-18/index.html | 177 ++ docs/reports/ns-18/index_SORT_BY_BLOCK.html | 177 ++ .../ns-18/index_SORT_BY_BLOCK_DESC.html | 177 ++ docs/reports/ns-18/index_SORT_BY_CLASS.html | 177 ++ .../ns-18/index_SORT_BY_CLASS_DESC.html | 177 ++ docs/reports/ns-18/index_SORT_BY_LINE.html | 177 ++ .../ns-18/index_SORT_BY_LINE_DESC.html | 177 ++ docs/reports/ns-18/index_SORT_BY_METHOD.html | 177 ++ .../ns-18/index_SORT_BY_METHOD_DESC.html | 177 ++ .../ns-18/index_SORT_BY_NAME_DESC.html | 177 ++ .../ns-18/index_SORT_BY_STATEMENT.html | 177 ++ .../ns-18/index_SORT_BY_STATEMENT_DESC.html | 177 ++ docs/reports/ns-18/sources/source-1.html | 252 +++ docs/reports/ns-18/sources/source-2.html | 93 ++ docs/reports/ns-19/index.html | 249 +++ docs/reports/ns-19/index_SORT_BY_BLOCK.html | 249 +++ .../ns-19/index_SORT_BY_BLOCK_DESC.html | 249 +++ docs/reports/ns-19/index_SORT_BY_CLASS.html | 249 +++ .../ns-19/index_SORT_BY_CLASS_DESC.html | 249 +++ docs/reports/ns-19/index_SORT_BY_LINE.html | 249 +++ .../ns-19/index_SORT_BY_LINE_DESC.html | 249 +++ docs/reports/ns-19/index_SORT_BY_METHOD.html | 249 +++ .../ns-19/index_SORT_BY_METHOD_DESC.html | 249 +++ .../ns-19/index_SORT_BY_NAME_DESC.html | 249 +++ .../ns-19/index_SORT_BY_STATEMENT.html | 249 +++ .../ns-19/index_SORT_BY_STATEMENT_DESC.html | 249 +++ docs/reports/ns-19/sources/source-1.html | 127 ++ docs/reports/ns-19/sources/source-2.html | 130 ++ docs/reports/ns-19/sources/source-3.html | 138 ++ docs/reports/ns-1a/index.html | 191 +++ docs/reports/ns-1a/index_SORT_BY_BLOCK.html | 191 +++ .../ns-1a/index_SORT_BY_BLOCK_DESC.html | 191 +++ docs/reports/ns-1a/index_SORT_BY_CLASS.html | 191 +++ .../ns-1a/index_SORT_BY_CLASS_DESC.html | 191 +++ docs/reports/ns-1a/index_SORT_BY_LINE.html | 191 +++ .../ns-1a/index_SORT_BY_LINE_DESC.html | 191 +++ docs/reports/ns-1a/index_SORT_BY_METHOD.html | 191 +++ .../ns-1a/index_SORT_BY_METHOD_DESC.html | 191 +++ .../ns-1a/index_SORT_BY_NAME_DESC.html | 191 +++ .../ns-1a/index_SORT_BY_STATEMENT.html | 191 +++ .../ns-1a/index_SORT_BY_STATEMENT_DESC.html | 191 +++ docs/reports/ns-1a/sources/source-1.html | 269 +++ docs/reports/ns-1b/index.html | 177 ++ docs/reports/ns-1b/index_SORT_BY_BLOCK.html | 177 ++ .../ns-1b/index_SORT_BY_BLOCK_DESC.html | 177 ++ docs/reports/ns-1b/index_SORT_BY_CLASS.html | 177 ++ .../ns-1b/index_SORT_BY_CLASS_DESC.html | 177 ++ docs/reports/ns-1b/index_SORT_BY_LINE.html | 177 ++ .../ns-1b/index_SORT_BY_LINE_DESC.html | 177 ++ docs/reports/ns-1b/index_SORT_BY_METHOD.html | 177 ++ .../ns-1b/index_SORT_BY_METHOD_DESC.html | 177 ++ .../ns-1b/index_SORT_BY_NAME_DESC.html | 177 ++ .../ns-1b/index_SORT_BY_STATEMENT.html | 177 ++ .../ns-1b/index_SORT_BY_STATEMENT_DESC.html | 177 ++ docs/reports/ns-1b/sources/source-1.html | 135 ++ docs/reports/ns-1b/sources/source-2.html | 79 + docs/reports/ns-1c/index.html | 213 +++ docs/reports/ns-1c/index_SORT_BY_BLOCK.html | 213 +++ .../ns-1c/index_SORT_BY_BLOCK_DESC.html | 213 +++ docs/reports/ns-1c/index_SORT_BY_CLASS.html | 213 +++ .../ns-1c/index_SORT_BY_CLASS_DESC.html | 213 +++ docs/reports/ns-1c/index_SORT_BY_LINE.html | 213 +++ .../ns-1c/index_SORT_BY_LINE_DESC.html | 213 +++ docs/reports/ns-1c/index_SORT_BY_METHOD.html | 213 +++ .../ns-1c/index_SORT_BY_METHOD_DESC.html | 213 +++ .../ns-1c/index_SORT_BY_NAME_DESC.html | 213 +++ .../ns-1c/index_SORT_BY_STATEMENT.html | 213 +++ .../ns-1c/index_SORT_BY_STATEMENT_DESC.html | 213 +++ docs/reports/ns-1c/sources/source-1.html | 134 ++ docs/reports/ns-1c/sources/source-2.html | 143 ++ docs/reports/ns-1c/sources/source-3.html | 273 ++++ docs/reports/ns-1d/index.html | 249 +++ docs/reports/ns-1d/index_SORT_BY_BLOCK.html | 249 +++ .../ns-1d/index_SORT_BY_BLOCK_DESC.html | 249 +++ docs/reports/ns-1d/index_SORT_BY_CLASS.html | 249 +++ .../ns-1d/index_SORT_BY_CLASS_DESC.html | 249 +++ docs/reports/ns-1d/index_SORT_BY_LINE.html | 249 +++ .../ns-1d/index_SORT_BY_LINE_DESC.html | 249 +++ docs/reports/ns-1d/index_SORT_BY_METHOD.html | 249 +++ .../ns-1d/index_SORT_BY_METHOD_DESC.html | 249 +++ .../ns-1d/index_SORT_BY_NAME_DESC.html | 249 +++ .../ns-1d/index_SORT_BY_STATEMENT.html | 249 +++ .../ns-1d/index_SORT_BY_STATEMENT_DESC.html | 249 +++ docs/reports/ns-1d/sources/source-1.html | 130 ++ docs/reports/ns-1d/sources/source-2.html | 134 ++ docs/reports/ns-1d/sources/source-3.html | 137 ++ docs/reports/ns-1e/index.html | 227 +++ docs/reports/ns-1e/index_SORT_BY_BLOCK.html | 227 +++ .../ns-1e/index_SORT_BY_BLOCK_DESC.html | 227 +++ docs/reports/ns-1e/index_SORT_BY_CLASS.html | 227 +++ .../ns-1e/index_SORT_BY_CLASS_DESC.html | 227 +++ docs/reports/ns-1e/index_SORT_BY_LINE.html | 227 +++ .../ns-1e/index_SORT_BY_LINE_DESC.html | 227 +++ docs/reports/ns-1e/index_SORT_BY_METHOD.html | 227 +++ .../ns-1e/index_SORT_BY_METHOD_DESC.html | 227 +++ .../ns-1e/index_SORT_BY_NAME_DESC.html | 227 +++ .../ns-1e/index_SORT_BY_STATEMENT.html | 227 +++ .../ns-1e/index_SORT_BY_STATEMENT_DESC.html | 227 +++ docs/reports/ns-1e/sources/source-1.html | 342 ++++ docs/reports/ns-1e/sources/source-2.html | 442 +++++ docs/reports/ns-1f/index.html | 177 ++ docs/reports/ns-1f/index_SORT_BY_BLOCK.html | 177 ++ .../ns-1f/index_SORT_BY_BLOCK_DESC.html | 177 ++ docs/reports/ns-1f/index_SORT_BY_CLASS.html | 177 ++ .../ns-1f/index_SORT_BY_CLASS_DESC.html | 177 ++ docs/reports/ns-1f/index_SORT_BY_LINE.html | 177 ++ .../ns-1f/index_SORT_BY_LINE_DESC.html | 177 ++ docs/reports/ns-1f/index_SORT_BY_METHOD.html | 177 ++ .../ns-1f/index_SORT_BY_METHOD_DESC.html | 177 ++ .../ns-1f/index_SORT_BY_NAME_DESC.html | 177 ++ .../ns-1f/index_SORT_BY_STATEMENT.html | 177 ++ .../ns-1f/index_SORT_BY_STATEMENT_DESC.html | 177 ++ docs/reports/ns-1f/sources/source-1.html | 232 +++ docs/reports/ns-1f/sources/source-2.html | 85 + docs/reports/ns-2/index.html | 186 +-- docs/reports/ns-2/index_SORT_BY_BLOCK.html | 186 +-- .../ns-2/index_SORT_BY_BLOCK_DESC.html | 186 +-- docs/reports/ns-2/index_SORT_BY_CLASS.html | 186 +-- .../ns-2/index_SORT_BY_CLASS_DESC.html | 186 +-- docs/reports/ns-2/index_SORT_BY_LINE.html | 186 +-- .../reports/ns-2/index_SORT_BY_LINE_DESC.html | 186 +-- docs/reports/ns-2/index_SORT_BY_METHOD.html | 186 +-- .../ns-2/index_SORT_BY_METHOD_DESC.html | 186 +-- .../reports/ns-2/index_SORT_BY_NAME_DESC.html | 186 +-- .../reports/ns-2/index_SORT_BY_STATEMENT.html | 186 +-- .../ns-2/index_SORT_BY_STATEMENT_DESC.html | 186 +-- docs/reports/ns-2/sources/source-1.html | 174 +- docs/reports/ns-2/sources/source-2.html | 220 +-- docs/reports/ns-2/sources/source-3.html | 142 +- docs/reports/ns-2/sources/source-4.html | 174 +- docs/reports/ns-20/index.html | 249 +++ docs/reports/ns-20/index_SORT_BY_BLOCK.html | 249 +++ .../ns-20/index_SORT_BY_BLOCK_DESC.html | 249 +++ docs/reports/ns-20/index_SORT_BY_CLASS.html | 249 +++ .../ns-20/index_SORT_BY_CLASS_DESC.html | 249 +++ docs/reports/ns-20/index_SORT_BY_LINE.html | 249 +++ .../ns-20/index_SORT_BY_LINE_DESC.html | 249 +++ docs/reports/ns-20/index_SORT_BY_METHOD.html | 249 +++ .../ns-20/index_SORT_BY_METHOD_DESC.html | 249 +++ .../ns-20/index_SORT_BY_NAME_DESC.html | 249 +++ .../ns-20/index_SORT_BY_STATEMENT.html | 249 +++ .../ns-20/index_SORT_BY_STATEMENT_DESC.html | 249 +++ docs/reports/ns-20/sources/source-1.html | 127 ++ docs/reports/ns-20/sources/source-2.html | 130 ++ docs/reports/ns-20/sources/source-3.html | 138 ++ docs/reports/ns-21/index.html | 213 +++ docs/reports/ns-21/index_SORT_BY_BLOCK.html | 213 +++ .../ns-21/index_SORT_BY_BLOCK_DESC.html | 213 +++ docs/reports/ns-21/index_SORT_BY_CLASS.html | 213 +++ .../ns-21/index_SORT_BY_CLASS_DESC.html | 213 +++ docs/reports/ns-21/index_SORT_BY_LINE.html | 213 +++ .../ns-21/index_SORT_BY_LINE_DESC.html | 213 +++ docs/reports/ns-21/index_SORT_BY_METHOD.html | 213 +++ .../ns-21/index_SORT_BY_METHOD_DESC.html | 213 +++ .../ns-21/index_SORT_BY_NAME_DESC.html | 213 +++ .../ns-21/index_SORT_BY_STATEMENT.html | 213 +++ .../ns-21/index_SORT_BY_STATEMENT_DESC.html | 213 +++ docs/reports/ns-21/sources/source-1.html | 142 ++ docs/reports/ns-21/sources/source-2.html | 153 ++ docs/reports/ns-21/sources/source-3.html | 83 + docs/reports/ns-22/index.html | 227 +++ docs/reports/ns-22/index_SORT_BY_BLOCK.html | 227 +++ .../ns-22/index_SORT_BY_BLOCK_DESC.html | 227 +++ docs/reports/ns-22/index_SORT_BY_CLASS.html | 227 +++ .../ns-22/index_SORT_BY_CLASS_DESC.html | 227 +++ docs/reports/ns-22/index_SORT_BY_LINE.html | 227 +++ .../ns-22/index_SORT_BY_LINE_DESC.html | 227 +++ docs/reports/ns-22/index_SORT_BY_METHOD.html | 227 +++ .../ns-22/index_SORT_BY_METHOD_DESC.html | 227 +++ .../ns-22/index_SORT_BY_NAME_DESC.html | 227 +++ .../ns-22/index_SORT_BY_STATEMENT.html | 227 +++ .../ns-22/index_SORT_BY_STATEMENT_DESC.html | 227 +++ docs/reports/ns-22/sources/source-1.html | 134 ++ docs/reports/ns-22/sources/source-2.html | 152 ++ docs/reports/ns-22/sources/source-3.html | 189 +++ docs/reports/ns-23/index.html | 177 ++ docs/reports/ns-23/index_SORT_BY_BLOCK.html | 177 ++ .../ns-23/index_SORT_BY_BLOCK_DESC.html | 177 ++ docs/reports/ns-23/index_SORT_BY_CLASS.html | 177 ++ .../ns-23/index_SORT_BY_CLASS_DESC.html | 177 ++ docs/reports/ns-23/index_SORT_BY_LINE.html | 177 ++ .../ns-23/index_SORT_BY_LINE_DESC.html | 177 ++ docs/reports/ns-23/index_SORT_BY_METHOD.html | 177 ++ .../ns-23/index_SORT_BY_METHOD_DESC.html | 177 ++ .../ns-23/index_SORT_BY_NAME_DESC.html | 177 ++ .../ns-23/index_SORT_BY_STATEMENT.html | 177 ++ .../ns-23/index_SORT_BY_STATEMENT_DESC.html | 177 ++ docs/reports/ns-23/sources/source-1.html | 246 +++ docs/reports/ns-23/sources/source-2.html | 168 ++ docs/reports/ns-23/sources/source-3.html | 166 ++ docs/reports/ns-23/sources/source-4.html | 256 +++ docs/reports/ns-23/sources/source-5.html | 243 +++ docs/reports/ns-23/sources/source-6.html | 167 ++ docs/reports/ns-24/index.html | 249 +++ docs/reports/ns-24/index_SORT_BY_BLOCK.html | 249 +++ .../ns-24/index_SORT_BY_BLOCK_DESC.html | 249 +++ docs/reports/ns-24/index_SORT_BY_CLASS.html | 249 +++ .../ns-24/index_SORT_BY_CLASS_DESC.html | 249 +++ docs/reports/ns-24/index_SORT_BY_LINE.html | 249 +++ .../ns-24/index_SORT_BY_LINE_DESC.html | 249 +++ docs/reports/ns-24/index_SORT_BY_METHOD.html | 249 +++ .../ns-24/index_SORT_BY_METHOD_DESC.html | 249 +++ .../ns-24/index_SORT_BY_NAME_DESC.html | 249 +++ .../ns-24/index_SORT_BY_STATEMENT.html | 249 +++ .../ns-24/index_SORT_BY_STATEMENT_DESC.html | 249 +++ docs/reports/ns-24/sources/source-1.html | 130 ++ docs/reports/ns-24/sources/source-2.html | 134 ++ docs/reports/ns-24/sources/source-3.html | 152 ++ docs/reports/ns-25/index.html | 227 +++ docs/reports/ns-25/index_SORT_BY_BLOCK.html | 227 +++ .../ns-25/index_SORT_BY_BLOCK_DESC.html | 227 +++ docs/reports/ns-25/index_SORT_BY_CLASS.html | 227 +++ .../ns-25/index_SORT_BY_CLASS_DESC.html | 227 +++ docs/reports/ns-25/index_SORT_BY_LINE.html | 227 +++ .../ns-25/index_SORT_BY_LINE_DESC.html | 227 +++ docs/reports/ns-25/index_SORT_BY_METHOD.html | 227 +++ .../ns-25/index_SORT_BY_METHOD_DESC.html | 227 +++ .../ns-25/index_SORT_BY_NAME_DESC.html | 227 +++ .../ns-25/index_SORT_BY_STATEMENT.html | 227 +++ .../ns-25/index_SORT_BY_STATEMENT_DESC.html | 227 +++ docs/reports/ns-25/sources/source-1.html | 398 +++++ docs/reports/ns-25/sources/source-2.html | 409 +++++ docs/reports/ns-26/index.html | 93 ++ docs/reports/ns-26/index_SORT_BY_BLOCK.html | 93 ++ .../ns-26/index_SORT_BY_BLOCK_DESC.html | 93 ++ docs/reports/ns-26/index_SORT_BY_CLASS.html | 93 ++ .../ns-26/index_SORT_BY_CLASS_DESC.html | 93 ++ docs/reports/ns-26/index_SORT_BY_LINE.html | 93 ++ .../ns-26/index_SORT_BY_LINE_DESC.html | 93 ++ docs/reports/ns-26/index_SORT_BY_METHOD.html | 93 ++ .../ns-26/index_SORT_BY_METHOD_DESC.html | 93 ++ .../ns-26/index_SORT_BY_NAME_DESC.html | 93 ++ .../ns-26/index_SORT_BY_STATEMENT.html | 93 ++ .../ns-26/index_SORT_BY_STATEMENT_DESC.html | 93 ++ docs/reports/ns-26/sources/source-1.html | 111 ++ docs/reports/ns-26/sources/source-2.html | 126 ++ docs/reports/ns-27/index.html | 93 ++ docs/reports/ns-27/index_SORT_BY_BLOCK.html | 93 ++ .../ns-27/index_SORT_BY_BLOCK_DESC.html | 93 ++ docs/reports/ns-27/index_SORT_BY_CLASS.html | 93 ++ .../ns-27/index_SORT_BY_CLASS_DESC.html | 93 ++ docs/reports/ns-27/index_SORT_BY_LINE.html | 93 ++ .../ns-27/index_SORT_BY_LINE_DESC.html | 93 ++ docs/reports/ns-27/index_SORT_BY_METHOD.html | 93 ++ .../ns-27/index_SORT_BY_METHOD_DESC.html | 93 ++ .../ns-27/index_SORT_BY_NAME_DESC.html | 93 ++ .../ns-27/index_SORT_BY_STATEMENT.html | 93 ++ .../ns-27/index_SORT_BY_STATEMENT_DESC.html | 93 ++ docs/reports/ns-27/sources/source-1.html | 133 ++ docs/reports/ns-3/index.html | 306 ++++ docs/reports/ns-3/index_SORT_BY_BLOCK.html | 306 ++++ .../ns-3/index_SORT_BY_BLOCK_DESC.html | 306 ++++ docs/reports/ns-3/index_SORT_BY_CLASS.html | 306 ++++ .../ns-3/index_SORT_BY_CLASS_DESC.html | 306 ++++ docs/reports/ns-3/index_SORT_BY_LINE.html | 306 ++++ .../reports/ns-3/index_SORT_BY_LINE_DESC.html | 306 ++++ docs/reports/ns-3/index_SORT_BY_METHOD.html | 306 ++++ .../ns-3/index_SORT_BY_METHOD_DESC.html | 306 ++++ .../reports/ns-3/index_SORT_BY_NAME_DESC.html | 306 ++++ .../reports/ns-3/index_SORT_BY_STATEMENT.html | 306 ++++ .../ns-3/index_SORT_BY_STATEMENT_DESC.html | 306 ++++ docs/reports/ns-3/sources/source-1.html | 173 ++ docs/reports/ns-3/sources/source-2.html | 149 ++ docs/reports/ns-3/sources/source-3.html | 205 +++ docs/reports/ns-3/sources/source-4.html | 330 ++++ docs/reports/ns-4/index.html | 191 +++ docs/reports/ns-4/index_SORT_BY_BLOCK.html | 191 +++ .../ns-4/index_SORT_BY_BLOCK_DESC.html | 191 +++ docs/reports/ns-4/index_SORT_BY_CLASS.html | 191 +++ .../ns-4/index_SORT_BY_CLASS_DESC.html | 191 +++ docs/reports/ns-4/index_SORT_BY_LINE.html | 191 +++ .../reports/ns-4/index_SORT_BY_LINE_DESC.html | 191 +++ docs/reports/ns-4/index_SORT_BY_METHOD.html | 191 +++ .../ns-4/index_SORT_BY_METHOD_DESC.html | 191 +++ .../reports/ns-4/index_SORT_BY_NAME_DESC.html | 191 +++ .../reports/ns-4/index_SORT_BY_STATEMENT.html | 191 +++ .../ns-4/index_SORT_BY_STATEMENT_DESC.html | 191 +++ docs/reports/ns-4/sources/source-1.html | 376 +++++ docs/reports/ns-4/sources/source-2.html | 100 ++ docs/reports/ns-5/index.html | 191 +++ docs/reports/ns-5/index_SORT_BY_BLOCK.html | 191 +++ .../ns-5/index_SORT_BY_BLOCK_DESC.html | 191 +++ docs/reports/ns-5/index_SORT_BY_CLASS.html | 191 +++ .../ns-5/index_SORT_BY_CLASS_DESC.html | 191 +++ docs/reports/ns-5/index_SORT_BY_LINE.html | 191 +++ .../reports/ns-5/index_SORT_BY_LINE_DESC.html | 191 +++ docs/reports/ns-5/index_SORT_BY_METHOD.html | 191 +++ .../ns-5/index_SORT_BY_METHOD_DESC.html | 191 +++ .../reports/ns-5/index_SORT_BY_NAME_DESC.html | 191 +++ .../reports/ns-5/index_SORT_BY_STATEMENT.html | 191 +++ .../ns-5/index_SORT_BY_STATEMENT_DESC.html | 191 +++ docs/reports/ns-5/sources/source-1.html | 532 ++++++ docs/reports/ns-5/sources/source-2.html | 114 ++ docs/reports/ns-6/index.html | 213 +++ docs/reports/ns-6/index_SORT_BY_BLOCK.html | 213 +++ .../ns-6/index_SORT_BY_BLOCK_DESC.html | 213 +++ docs/reports/ns-6/index_SORT_BY_CLASS.html | 213 +++ .../ns-6/index_SORT_BY_CLASS_DESC.html | 213 +++ docs/reports/ns-6/index_SORT_BY_LINE.html | 213 +++ .../reports/ns-6/index_SORT_BY_LINE_DESC.html | 213 +++ docs/reports/ns-6/index_SORT_BY_METHOD.html | 213 +++ .../ns-6/index_SORT_BY_METHOD_DESC.html | 213 +++ .../reports/ns-6/index_SORT_BY_NAME_DESC.html | 213 +++ .../reports/ns-6/index_SORT_BY_STATEMENT.html | 213 +++ .../ns-6/index_SORT_BY_STATEMENT_DESC.html | 213 +++ docs/reports/ns-6/sources/source-1.html | 140 ++ docs/reports/ns-6/sources/source-2.html | 131 ++ docs/reports/ns-7/index.html | 213 +++ docs/reports/ns-7/index_SORT_BY_BLOCK.html | 213 +++ .../ns-7/index_SORT_BY_BLOCK_DESC.html | 213 +++ docs/reports/ns-7/index_SORT_BY_CLASS.html | 213 +++ .../ns-7/index_SORT_BY_CLASS_DESC.html | 213 +++ docs/reports/ns-7/index_SORT_BY_LINE.html | 213 +++ .../reports/ns-7/index_SORT_BY_LINE_DESC.html | 213 +++ docs/reports/ns-7/index_SORT_BY_METHOD.html | 213 +++ .../ns-7/index_SORT_BY_METHOD_DESC.html | 213 +++ .../reports/ns-7/index_SORT_BY_NAME_DESC.html | 213 +++ .../reports/ns-7/index_SORT_BY_STATEMENT.html | 213 +++ .../ns-7/index_SORT_BY_STATEMENT_DESC.html | 213 +++ docs/reports/ns-7/sources/source-1.html | 261 +++ docs/reports/ns-7/sources/source-2.html | 276 ++++ docs/reports/ns-7/sources/source-3.html | 89 + docs/reports/ns-8/index.html | 263 +++ docs/reports/ns-8/index_SORT_BY_BLOCK.html | 263 +++ .../ns-8/index_SORT_BY_BLOCK_DESC.html | 263 +++ docs/reports/ns-8/index_SORT_BY_CLASS.html | 263 +++ .../ns-8/index_SORT_BY_CLASS_DESC.html | 263 +++ docs/reports/ns-8/index_SORT_BY_LINE.html | 263 +++ .../reports/ns-8/index_SORT_BY_LINE_DESC.html | 263 +++ docs/reports/ns-8/index_SORT_BY_METHOD.html | 263 +++ .../ns-8/index_SORT_BY_METHOD_DESC.html | 263 +++ .../reports/ns-8/index_SORT_BY_NAME_DESC.html | 263 +++ .../reports/ns-8/index_SORT_BY_STATEMENT.html | 263 +++ .../ns-8/index_SORT_BY_STATEMENT_DESC.html | 263 +++ docs/reports/ns-8/sources/source-1.html | 260 +++ docs/reports/ns-8/sources/source-2.html | 189 +++ docs/reports/ns-8/sources/source-3.html | 292 ++++ docs/reports/ns-9/index.html | 191 +++ docs/reports/ns-9/index_SORT_BY_BLOCK.html | 191 +++ .../ns-9/index_SORT_BY_BLOCK_DESC.html | 191 +++ docs/reports/ns-9/index_SORT_BY_CLASS.html | 191 +++ .../ns-9/index_SORT_BY_CLASS_DESC.html | 191 +++ docs/reports/ns-9/index_SORT_BY_LINE.html | 191 +++ .../reports/ns-9/index_SORT_BY_LINE_DESC.html | 191 +++ docs/reports/ns-9/index_SORT_BY_METHOD.html | 191 +++ .../ns-9/index_SORT_BY_METHOD_DESC.html | 191 +++ .../reports/ns-9/index_SORT_BY_NAME_DESC.html | 191 +++ .../reports/ns-9/index_SORT_BY_STATEMENT.html | 191 +++ .../ns-9/index_SORT_BY_STATEMENT_DESC.html | 191 +++ docs/reports/ns-9/sources/source-1.html | 166 ++ docs/reports/ns-a/index.html | 191 +++ docs/reports/ns-a/index_SORT_BY_BLOCK.html | 191 +++ .../ns-a/index_SORT_BY_BLOCK_DESC.html | 191 +++ docs/reports/ns-a/index_SORT_BY_CLASS.html | 191 +++ .../ns-a/index_SORT_BY_CLASS_DESC.html | 191 +++ docs/reports/ns-a/index_SORT_BY_LINE.html | 191 +++ .../reports/ns-a/index_SORT_BY_LINE_DESC.html | 191 +++ docs/reports/ns-a/index_SORT_BY_METHOD.html | 191 +++ .../ns-a/index_SORT_BY_METHOD_DESC.html | 191 +++ .../reports/ns-a/index_SORT_BY_NAME_DESC.html | 191 +++ .../reports/ns-a/index_SORT_BY_STATEMENT.html | 191 +++ .../ns-a/index_SORT_BY_STATEMENT_DESC.html | 191 +++ docs/reports/ns-a/sources/source-1.html | 150 ++ docs/reports/ns-b/index.html | 213 +++ docs/reports/ns-b/index_SORT_BY_BLOCK.html | 213 +++ .../ns-b/index_SORT_BY_BLOCK_DESC.html | 213 +++ docs/reports/ns-b/index_SORT_BY_CLASS.html | 213 +++ .../ns-b/index_SORT_BY_CLASS_DESC.html | 213 +++ docs/reports/ns-b/index_SORT_BY_LINE.html | 213 +++ .../reports/ns-b/index_SORT_BY_LINE_DESC.html | 213 +++ docs/reports/ns-b/index_SORT_BY_METHOD.html | 213 +++ .../ns-b/index_SORT_BY_METHOD_DESC.html | 213 +++ .../reports/ns-b/index_SORT_BY_NAME_DESC.html | 213 +++ .../reports/ns-b/index_SORT_BY_STATEMENT.html | 213 +++ .../ns-b/index_SORT_BY_STATEMENT_DESC.html | 213 +++ docs/reports/ns-b/sources/source-1.html | 140 ++ docs/reports/ns-b/sources/source-2.html | 130 ++ docs/reports/ns-c/index.html | 177 ++ docs/reports/ns-c/index_SORT_BY_BLOCK.html | 177 ++ .../ns-c/index_SORT_BY_BLOCK_DESC.html | 177 ++ docs/reports/ns-c/index_SORT_BY_CLASS.html | 177 ++ .../ns-c/index_SORT_BY_CLASS_DESC.html | 177 ++ docs/reports/ns-c/index_SORT_BY_LINE.html | 177 ++ .../reports/ns-c/index_SORT_BY_LINE_DESC.html | 177 ++ docs/reports/ns-c/index_SORT_BY_METHOD.html | 177 ++ .../ns-c/index_SORT_BY_METHOD_DESC.html | 177 ++ .../reports/ns-c/index_SORT_BY_NAME_DESC.html | 177 ++ .../reports/ns-c/index_SORT_BY_STATEMENT.html | 177 ++ .../ns-c/index_SORT_BY_STATEMENT_DESC.html | 177 ++ docs/reports/ns-c/sources/source-1.html | 376 +++++ docs/reports/ns-c/sources/source-2.html | 91 ++ docs/reports/ns-d/index.html | 177 ++ docs/reports/ns-d/index_SORT_BY_BLOCK.html | 177 ++ .../ns-d/index_SORT_BY_BLOCK_DESC.html | 177 ++ docs/reports/ns-d/index_SORT_BY_CLASS.html | 177 ++ .../ns-d/index_SORT_BY_CLASS_DESC.html | 177 ++ docs/reports/ns-d/index_SORT_BY_LINE.html | 177 ++ .../reports/ns-d/index_SORT_BY_LINE_DESC.html | 177 ++ docs/reports/ns-d/index_SORT_BY_METHOD.html | 177 ++ .../ns-d/index_SORT_BY_METHOD_DESC.html | 177 ++ .../reports/ns-d/index_SORT_BY_NAME_DESC.html | 177 ++ .../reports/ns-d/index_SORT_BY_STATEMENT.html | 177 ++ .../ns-d/index_SORT_BY_STATEMENT_DESC.html | 177 ++ docs/reports/ns-d/sources/source-1.html | 169 ++ docs/reports/ns-e/index.html | 227 +++ docs/reports/ns-e/index_SORT_BY_BLOCK.html | 227 +++ .../ns-e/index_SORT_BY_BLOCK_DESC.html | 227 +++ docs/reports/ns-e/index_SORT_BY_CLASS.html | 227 +++ .../ns-e/index_SORT_BY_CLASS_DESC.html | 227 +++ docs/reports/ns-e/index_SORT_BY_LINE.html | 227 +++ .../reports/ns-e/index_SORT_BY_LINE_DESC.html | 227 +++ docs/reports/ns-e/index_SORT_BY_METHOD.html | 227 +++ .../ns-e/index_SORT_BY_METHOD_DESC.html | 227 +++ .../reports/ns-e/index_SORT_BY_NAME_DESC.html | 227 +++ .../reports/ns-e/index_SORT_BY_STATEMENT.html | 227 +++ .../ns-e/index_SORT_BY_STATEMENT_DESC.html | 227 +++ docs/reports/ns-e/sources/source-1.html | 147 ++ docs/reports/ns-e/sources/source-2.html | 153 ++ docs/reports/ns-e/sources/source-3.html | 101 ++ docs/reports/ns-f/index.html | 191 +++ docs/reports/ns-f/index_SORT_BY_BLOCK.html | 191 +++ .../ns-f/index_SORT_BY_BLOCK_DESC.html | 191 +++ docs/reports/ns-f/index_SORT_BY_CLASS.html | 191 +++ .../ns-f/index_SORT_BY_CLASS_DESC.html | 191 +++ docs/reports/ns-f/index_SORT_BY_LINE.html | 191 +++ .../reports/ns-f/index_SORT_BY_LINE_DESC.html | 191 +++ docs/reports/ns-f/index_SORT_BY_METHOD.html | 191 +++ .../ns-f/index_SORT_BY_METHOD_DESC.html | 191 +++ .../reports/ns-f/index_SORT_BY_NAME_DESC.html | 191 +++ .../reports/ns-f/index_SORT_BY_STATEMENT.html | 191 +++ .../ns-f/index_SORT_BY_STATEMENT_DESC.html | 191 +++ docs/reports/ns-f/sources/source-1.html | 216 +++ docs/reports/ns-f/sources/source-2.html | 87 + docs/reports/ns-f/sources/source-3.html | 82 + 581 files changed, 126274 insertions(+), 4132 deletions(-) delete mode 100644 docs/reports/css/highlight-idea.css create mode 100644 docs/reports/css/idea.min.css create mode 100644 docs/reports/js/highlight.min.js delete mode 100644 docs/reports/js/highlight.pack.js create mode 100644 docs/reports/js/highlightjs-line-numbers.min.js delete mode 100644 docs/reports/ns-1/sources/source-2.html create mode 100644 docs/reports/ns-10/index.html create mode 100644 docs/reports/ns-10/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-10/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-10/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-10/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-10/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-10/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-10/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-10/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-10/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-10/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-10/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-10/sources/source-1.html create mode 100644 docs/reports/ns-10/sources/source-2.html create mode 100644 docs/reports/ns-11/index.html create mode 100644 docs/reports/ns-11/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-11/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-11/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-11/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-11/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-11/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-11/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-11/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-11/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-11/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-11/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-11/sources/source-1.html create mode 100644 docs/reports/ns-11/sources/source-2.html create mode 100644 docs/reports/ns-12/index.html create mode 100644 docs/reports/ns-12/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-12/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-12/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-12/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-12/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-12/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-12/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-12/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-12/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-12/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-12/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-12/sources/source-1.html create mode 100644 docs/reports/ns-12/sources/source-2.html create mode 100644 docs/reports/ns-12/sources/source-3.html create mode 100644 docs/reports/ns-13/index.html create mode 100644 docs/reports/ns-13/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-13/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-13/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-13/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-13/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-13/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-13/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-13/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-13/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-13/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-13/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-13/sources/source-1.html create mode 100644 docs/reports/ns-13/sources/source-2.html create mode 100644 docs/reports/ns-13/sources/source-3.html create mode 100644 docs/reports/ns-14/index.html create mode 100644 docs/reports/ns-14/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-14/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-14/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-14/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-14/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-14/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-14/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-14/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-14/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-14/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-14/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-14/sources/source-1.html create mode 100644 docs/reports/ns-14/sources/source-2.html create mode 100644 docs/reports/ns-15/index.html create mode 100644 docs/reports/ns-15/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-15/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-15/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-15/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-15/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-15/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-15/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-15/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-15/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-15/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-15/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-15/sources/source-1.html create mode 100644 docs/reports/ns-15/sources/source-2.html create mode 100644 docs/reports/ns-16/index.html create mode 100644 docs/reports/ns-16/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-16/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-16/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-16/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-16/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-16/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-16/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-16/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-16/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-16/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-16/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-16/sources/source-1.html create mode 100644 docs/reports/ns-16/sources/source-2.html create mode 100644 docs/reports/ns-16/sources/source-3.html create mode 100644 docs/reports/ns-17/index.html create mode 100644 docs/reports/ns-17/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-17/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-17/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-17/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-17/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-17/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-17/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-17/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-17/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-17/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-17/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-17/sources/source-1.html create mode 100644 docs/reports/ns-17/sources/source-2.html create mode 100644 docs/reports/ns-18/index.html create mode 100644 docs/reports/ns-18/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-18/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-18/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-18/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-18/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-18/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-18/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-18/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-18/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-18/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-18/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-18/sources/source-1.html create mode 100644 docs/reports/ns-18/sources/source-2.html create mode 100644 docs/reports/ns-19/index.html create mode 100644 docs/reports/ns-19/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-19/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-19/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-19/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-19/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-19/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-19/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-19/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-19/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-19/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-19/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-19/sources/source-1.html create mode 100644 docs/reports/ns-19/sources/source-2.html create mode 100644 docs/reports/ns-19/sources/source-3.html create mode 100644 docs/reports/ns-1a/index.html create mode 100644 docs/reports/ns-1a/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-1a/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-1a/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-1a/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-1a/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-1a/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-1a/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-1a/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-1a/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-1a/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-1a/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-1a/sources/source-1.html create mode 100644 docs/reports/ns-1b/index.html create mode 100644 docs/reports/ns-1b/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-1b/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-1b/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-1b/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-1b/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-1b/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-1b/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-1b/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-1b/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-1b/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-1b/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-1b/sources/source-1.html create mode 100644 docs/reports/ns-1b/sources/source-2.html create mode 100644 docs/reports/ns-1c/index.html create mode 100644 docs/reports/ns-1c/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-1c/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-1c/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-1c/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-1c/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-1c/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-1c/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-1c/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-1c/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-1c/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-1c/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-1c/sources/source-1.html create mode 100644 docs/reports/ns-1c/sources/source-2.html create mode 100644 docs/reports/ns-1c/sources/source-3.html create mode 100644 docs/reports/ns-1d/index.html create mode 100644 docs/reports/ns-1d/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-1d/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-1d/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-1d/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-1d/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-1d/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-1d/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-1d/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-1d/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-1d/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-1d/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-1d/sources/source-1.html create mode 100644 docs/reports/ns-1d/sources/source-2.html create mode 100644 docs/reports/ns-1d/sources/source-3.html create mode 100644 docs/reports/ns-1e/index.html create mode 100644 docs/reports/ns-1e/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-1e/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-1e/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-1e/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-1e/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-1e/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-1e/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-1e/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-1e/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-1e/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-1e/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-1e/sources/source-1.html create mode 100644 docs/reports/ns-1e/sources/source-2.html create mode 100644 docs/reports/ns-1f/index.html create mode 100644 docs/reports/ns-1f/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-1f/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-1f/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-1f/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-1f/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-1f/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-1f/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-1f/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-1f/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-1f/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-1f/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-1f/sources/source-1.html create mode 100644 docs/reports/ns-1f/sources/source-2.html create mode 100644 docs/reports/ns-20/index.html create mode 100644 docs/reports/ns-20/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-20/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-20/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-20/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-20/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-20/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-20/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-20/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-20/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-20/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-20/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-20/sources/source-1.html create mode 100644 docs/reports/ns-20/sources/source-2.html create mode 100644 docs/reports/ns-20/sources/source-3.html create mode 100644 docs/reports/ns-21/index.html create mode 100644 docs/reports/ns-21/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-21/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-21/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-21/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-21/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-21/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-21/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-21/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-21/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-21/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-21/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-21/sources/source-1.html create mode 100644 docs/reports/ns-21/sources/source-2.html create mode 100644 docs/reports/ns-21/sources/source-3.html create mode 100644 docs/reports/ns-22/index.html create mode 100644 docs/reports/ns-22/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-22/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-22/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-22/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-22/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-22/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-22/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-22/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-22/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-22/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-22/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-22/sources/source-1.html create mode 100644 docs/reports/ns-22/sources/source-2.html create mode 100644 docs/reports/ns-22/sources/source-3.html create mode 100644 docs/reports/ns-23/index.html create mode 100644 docs/reports/ns-23/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-23/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-23/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-23/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-23/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-23/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-23/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-23/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-23/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-23/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-23/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-23/sources/source-1.html create mode 100644 docs/reports/ns-23/sources/source-2.html create mode 100644 docs/reports/ns-23/sources/source-3.html create mode 100644 docs/reports/ns-23/sources/source-4.html create mode 100644 docs/reports/ns-23/sources/source-5.html create mode 100644 docs/reports/ns-23/sources/source-6.html create mode 100644 docs/reports/ns-24/index.html create mode 100644 docs/reports/ns-24/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-24/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-24/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-24/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-24/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-24/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-24/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-24/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-24/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-24/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-24/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-24/sources/source-1.html create mode 100644 docs/reports/ns-24/sources/source-2.html create mode 100644 docs/reports/ns-24/sources/source-3.html create mode 100644 docs/reports/ns-25/index.html create mode 100644 docs/reports/ns-25/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-25/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-25/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-25/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-25/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-25/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-25/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-25/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-25/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-25/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-25/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-25/sources/source-1.html create mode 100644 docs/reports/ns-25/sources/source-2.html create mode 100644 docs/reports/ns-26/index.html create mode 100644 docs/reports/ns-26/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-26/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-26/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-26/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-26/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-26/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-26/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-26/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-26/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-26/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-26/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-26/sources/source-1.html create mode 100644 docs/reports/ns-26/sources/source-2.html create mode 100644 docs/reports/ns-27/index.html create mode 100644 docs/reports/ns-27/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-27/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-27/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-27/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-27/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-27/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-27/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-27/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-27/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-27/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-27/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-27/sources/source-1.html create mode 100644 docs/reports/ns-3/index.html create mode 100644 docs/reports/ns-3/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-3/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-3/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-3/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-3/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-3/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-3/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-3/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-3/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-3/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-3/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-3/sources/source-1.html create mode 100644 docs/reports/ns-3/sources/source-2.html create mode 100644 docs/reports/ns-3/sources/source-3.html create mode 100644 docs/reports/ns-3/sources/source-4.html create mode 100644 docs/reports/ns-4/index.html create mode 100644 docs/reports/ns-4/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-4/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-4/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-4/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-4/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-4/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-4/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-4/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-4/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-4/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-4/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-4/sources/source-1.html create mode 100644 docs/reports/ns-4/sources/source-2.html create mode 100644 docs/reports/ns-5/index.html create mode 100644 docs/reports/ns-5/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-5/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-5/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-5/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-5/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-5/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-5/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-5/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-5/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-5/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-5/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-5/sources/source-1.html create mode 100644 docs/reports/ns-5/sources/source-2.html create mode 100644 docs/reports/ns-6/index.html create mode 100644 docs/reports/ns-6/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-6/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-6/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-6/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-6/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-6/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-6/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-6/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-6/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-6/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-6/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-6/sources/source-1.html create mode 100644 docs/reports/ns-6/sources/source-2.html create mode 100644 docs/reports/ns-7/index.html create mode 100644 docs/reports/ns-7/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-7/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-7/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-7/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-7/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-7/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-7/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-7/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-7/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-7/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-7/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-7/sources/source-1.html create mode 100644 docs/reports/ns-7/sources/source-2.html create mode 100644 docs/reports/ns-7/sources/source-3.html create mode 100644 docs/reports/ns-8/index.html create mode 100644 docs/reports/ns-8/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-8/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-8/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-8/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-8/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-8/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-8/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-8/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-8/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-8/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-8/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-8/sources/source-1.html create mode 100644 docs/reports/ns-8/sources/source-2.html create mode 100644 docs/reports/ns-8/sources/source-3.html create mode 100644 docs/reports/ns-9/index.html create mode 100644 docs/reports/ns-9/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-9/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-9/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-9/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-9/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-9/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-9/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-9/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-9/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-9/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-9/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-9/sources/source-1.html create mode 100644 docs/reports/ns-a/index.html create mode 100644 docs/reports/ns-a/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-a/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-a/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-a/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-a/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-a/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-a/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-a/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-a/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-a/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-a/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-a/sources/source-1.html create mode 100644 docs/reports/ns-b/index.html create mode 100644 docs/reports/ns-b/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-b/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-b/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-b/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-b/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-b/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-b/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-b/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-b/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-b/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-b/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-b/sources/source-1.html create mode 100644 docs/reports/ns-b/sources/source-2.html create mode 100644 docs/reports/ns-c/index.html create mode 100644 docs/reports/ns-c/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-c/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-c/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-c/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-c/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-c/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-c/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-c/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-c/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-c/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-c/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-c/sources/source-1.html create mode 100644 docs/reports/ns-c/sources/source-2.html create mode 100644 docs/reports/ns-d/index.html create mode 100644 docs/reports/ns-d/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-d/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-d/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-d/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-d/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-d/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-d/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-d/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-d/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-d/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-d/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-d/sources/source-1.html create mode 100644 docs/reports/ns-e/index.html create mode 100644 docs/reports/ns-e/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-e/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-e/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-e/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-e/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-e/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-e/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-e/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-e/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-e/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-e/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-e/sources/source-1.html create mode 100644 docs/reports/ns-e/sources/source-2.html create mode 100644 docs/reports/ns-e/sources/source-3.html create mode 100644 docs/reports/ns-f/index.html create mode 100644 docs/reports/ns-f/index_SORT_BY_BLOCK.html create mode 100644 docs/reports/ns-f/index_SORT_BY_BLOCK_DESC.html create mode 100644 docs/reports/ns-f/index_SORT_BY_CLASS.html create mode 100644 docs/reports/ns-f/index_SORT_BY_CLASS_DESC.html create mode 100644 docs/reports/ns-f/index_SORT_BY_LINE.html create mode 100644 docs/reports/ns-f/index_SORT_BY_LINE_DESC.html create mode 100644 docs/reports/ns-f/index_SORT_BY_METHOD.html create mode 100644 docs/reports/ns-f/index_SORT_BY_METHOD_DESC.html create mode 100644 docs/reports/ns-f/index_SORT_BY_NAME_DESC.html create mode 100644 docs/reports/ns-f/index_SORT_BY_STATEMENT.html create mode 100644 docs/reports/ns-f/index_SORT_BY_STATEMENT_DESC.html create mode 100644 docs/reports/ns-f/sources/source-1.html create mode 100644 docs/reports/ns-f/sources/source-2.html create mode 100644 docs/reports/ns-f/sources/source-3.html diff --git a/docs/reports/css/coverage.css b/docs/reports/css/coverage.css index f12e9cf1..cef77651 100644 --- a/docs/reports/css/coverage.css +++ b/docs/reports/css/coverage.css @@ -49,10 +49,6 @@ a:hover { text-decoration: underline; } -i { - background-color: #eee; -} - span.separator { color: #9BA9BA; padding-left: 5px; @@ -114,40 +110,30 @@ div.footer { line-height: 140%; } -div.sourceCode { +code.sourceCode { width: 100%; border: 1px solid #ccc; font: normal 12px 'Menlo', 'Bitstream Vera Sans Mono', 'Courier New', 'Courier', monospace; white-space: pre; } -div.sourceCode b { +code.sourceCode b { font-weight: normal; } -div.sourceCode i { - display: block; - float: left; - width: 3em; - padding-right: 3px; - border-right: 1px solid #ccc; - font-style: normal; - text-align: right; -} - -div.sourceCode i.no-highlight span.number { +code.sourceCode span.number { color: #151515; } -div.sourceCode .fc, div.sourceCode .fc i { +code.sourceCode .fc { background-color: #cfc; } -div.sourceCode .pc, div.sourceCode .pc i { +code.sourceCode .pc { background-color: #ffc; } -div.sourceCode .nc, div.sourceCode .nc i { +code.sourceCode .nc { background-color: #fcc; } diff --git a/docs/reports/css/highlight-idea.css b/docs/reports/css/highlight-idea.css deleted file mode 100644 index 1d1fa101..00000000 --- a/docs/reports/css/highlight-idea.css +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Copyright 2000-2021 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/* - -Intellij Idea-like styling (c) Vasily Polovnyov - -*/ - -pre code { - display: block; padding: 0.5em; - color: #000; - background: #fff; -} - -pre .subst, -pre .title { - font-weight: normal; - color: #000; -} - -pre .comment, -pre .template_comment, -pre .javadoc, -pre .diff .header { - color: #808080; - font-style: italic; -} - -pre .annotation, -pre .decorator, -pre .preprocessor, -pre .doctype, -pre .pi, -pre .chunk, -pre .shebang, -pre .apache .cbracket, -pre .input_number, -pre .http .title { - color: #808000; -} - -pre .tag, -pre .pi { - background: #efefef; -} - -/* leonid.khachaturov: redefine background as it conflicts with change highlighting we apply on top of source highlighting */ -pre .changeAdded .tag, -pre .changeRemoved .tag, -pre .changeAdded .pi, -pre .changeRemoved .pi { - background: transparent; -} - -/* leonid.khachaturov: redefine .comment from main.css */ -pre .comment { - margin: 0; - padding: 0; - font-size: 100%; -} - -pre .tag .title, -pre .id, -pre .attr_selector, -pre .pseudo, -pre .literal, -pre .keyword, -pre .hexcolor, -pre .css .function, -pre .ini .title, -pre .css .class, -pre .list .title, -pre .nginx .title, -pre .tex .command, -pre .request, -pre .status { - font-weight: bold; - color: #000080; -} - -pre .attribute, -pre .rules .keyword, -pre .number, -pre .date, -pre .regexp, -pre .tex .special { - font-weight: bold; - color: #0000ff; -} - -pre .number, -pre .regexp { - font-weight: normal; -} - -pre .string, -pre .value, -pre .filter .argument, -pre .css .function .params, -pre .apache .tag { - color: #008000; - font-weight: bold; -} - -pre .symbol, -pre .ruby .symbol .string, -pre .ruby .symbol .keyword, -pre .ruby .symbol .keymethods, -pre .char, -pre .tex .formula { - color: #000; - background: #d0eded; - font-style: italic; -} - -pre .phpdoc, -pre .yardoctag, -pre .javadoctag { - text-decoration: underline; -} - -pre .variable, -pre .envvar, -pre .apache .sqbracket, -pre .nginx .built_in { - color: #660e7a; -} - -pre .addition { - background: #baeeba; -} - -pre .deletion { - background: #ffc8bd; -} - -pre .diff .change { - background: #bccff9; -} diff --git a/docs/reports/css/idea.min.css b/docs/reports/css/idea.min.css new file mode 100644 index 00000000..a8d5292b --- /dev/null +++ b/docs/reports/css/idea.min.css @@ -0,0 +1,118 @@ +/* + * Copyright 2000-2021 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* +Intellij Idea-like styling (c) Vasily Polovnyov +*/ + +.hljs { + color: #000; + background: #fff; +} + +.hljs-subst, +.hljs-title { + font-weight: normal; + color: #000; +} + +.hljs-comment, +.hljs-quote { + color: #808080; + font-style: italic; +} + +.hljs-meta { + color: #808000; +} + +.hljs-tag { + background: #efefef; +} + +.hljs-section, +.hljs-name, +.hljs-literal, +.hljs-keyword, +.hljs-selector-tag, +.hljs-type, +.hljs-selector-id, +.hljs-selector-class { + font-weight: bold; + color: #000080; +} + +.hljs-attribute, +.hljs-number, +.hljs-regexp, +.hljs-link { + font-weight: bold; + color: #0000ff; +} + +.hljs-number, +.hljs-regexp, +.hljs-link { + font-weight: normal; +} + +.hljs-string { + color: #008000; + font-weight: bold; +} + +.hljs-symbol, +.hljs-bullet, +.hljs-formula { + color: #000; + background: #d0eded; + font-style: italic; +} + +.hljs-doctag { + text-decoration: underline; +} + +.hljs-variable, +.hljs-template-variable { + color: #660e7a; +} + +.hljs-addition { + background: #baeeba; +} + +.hljs-deletion { + background: #ffc8bd; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +.hljs-ln-numbers { + display: block; + float: left; + width: 3em; + border-right: 1px solid #ccc; + font-style: normal; + text-align: right; + background-color: #eee; +} diff --git a/docs/reports/index.html b/docs/reports/index.html index 84f0582f..b7fdef44 100644 --- a/docs/reports/index.html +++ b/docs/reports/index.html @@ -3,21 +3,23 @@ - Coverage Report > Summary + + app Coverage Report > Summary - + +
-

Overall Coverage Summary

+

app: Overall Coverage Summary

@@ -46,42 +48,42 @@

Overall Coverage Summary

@@ -117,13 +119,143 @@

Coverage Breakdown

- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + -
Package all classes - 0% + 9.2% - (0/11) + (12/131) - 0% + 12% - (0/18) + (47/393) - 0% + 10.9% - (0/54) + (14/128) - 0% + 24.1% - (0/59) + (235/976) - 0% + 5.9% - (0/545) + (234/3937)
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) + + + + 0% + + + (0/8) + + + + 0% + + + (0/10) + + + + 0% + + + (0/38) + +
com.stslex93.notes.core.core + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/7) + +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) @@ -133,6 +265,84 @@

Coverage Breakdown

(0/6) +
+ + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + @@ -140,7 +350,7 @@

Coverage Breakdown

0% - (0/13) + (0/11)
@@ -153,13 +363,13 @@

Coverage Breakdown

com.stslex93.notes.uicom.stslex93.notes.core.label.repository 0% - (0/8) + (0/7) @@ -167,15 +377,16 @@

Coverage Breakdown

0% - (0/12) + (0/15)
0% - (0/54) + (0/18) @@ -183,7 +394,42 @@

Coverage Breakdown

0% - (0/46) + (0/140) + +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) @@ -191,36 +437,1140 @@

Coverage Breakdown

0% - (0/492) + (0/289)
-
- - diff --git a/docs/reports/index_SORT_BY_BLOCK.html b/docs/reports/index_SORT_BY_BLOCK.html index 380e833b..e8ba53a9 100644 --- a/docs/reports/index_SORT_BY_BLOCK.html +++ b/docs/reports/index_SORT_BY_BLOCK.html @@ -3,21 +3,23 @@ - Coverage Report > Summary + + app Coverage Report > Summary - + +
-

Overall Coverage Summary

+

app: Overall Coverage Summary

@@ -46,42 +48,42 @@

Overall Coverage Summary

@@ -117,7 +119,51 @@

Coverage Breakdown

- + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + -
Package all classes - 0% + 9.2% - (0/11) + (12/131) - 0% + 12% - (0/18) + (47/393) - 0% + 10.9% - (0/54) + (14/128) - 0% + 24.1% - (0/59) + (235/976) - 0% + 5.9% - (0/545) + (234/3937)
com.stslex93.notescom.stslex93.notes.core.core + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/7) + +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + 0% @@ -126,12 +172,40 @@

Coverage Breakdown

(0/3)
0% - (0/6) + (0/11) + + + + 0% + + + (0/53) + +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) @@ -140,7 +214,43 @@

Coverage Breakdown

0% - (0/13) + (0/18) + +
+ + 0% + + + (0/140) + +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) @@ -153,13 +263,13 @@

Coverage Breakdown

com.stslex93.notes.uicom.stslex93.notes.core.notes.repository 0% - (0/8) + (0/5) @@ -167,15 +277,16 @@

Coverage Breakdown

0% - (0/12) + (0/17)
0% - (0/54) + (0/20) @@ -183,7 +294,71 @@

Coverage Breakdown

0% - (0/46) + (0/143) + +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) @@ -191,36 +366,1211 @@

Coverage Breakdown

0% - (0/492) + (0/92)
-
- - diff --git a/docs/reports/index_SORT_BY_BLOCK_DESC.html b/docs/reports/index_SORT_BY_BLOCK_DESC.html index 09461140..adcc92ad 100644 --- a/docs/reports/index_SORT_BY_BLOCK_DESC.html +++ b/docs/reports/index_SORT_BY_BLOCK_DESC.html @@ -3,21 +3,23 @@ - Coverage Report > Summary + + app Coverage Report > Summary - + +
-

Overall Coverage Summary

+

app: Overall Coverage Summary

@@ -46,42 +48,42 @@

Overall Coverage Summary

@@ -117,15 +119,179 @@

Coverage Breakdown

- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + -
Package all classes - 0% + 9.2% - (0/11) + (12/131) - 0% + 12% - (0/18) + (47/393) - 0% + 10.9% - (0/54) + (14/128) - 0% + 24.1% - (0/59) + (235/976) - 0% + 5.9% - (0/545) + (234/3937)
com.stslex93.notes.uicom.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
com.stslex93.notes.feature.home.ui.store 0% - (0/8) + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39)
com.stslex93.notes.feature.edit_label.ui.store 0% @@ -139,7 +305,7 @@

Coverage Breakdown

0%
- (0/54) + (0/27)
@@ -147,7 +313,7 @@

Coverage Breakdown

0% - (0/46) + (0/18)
@@ -155,12 +321,20 @@

Coverage Breakdown

0% - (0/492) + (0/72) + +
+ + 0% + + + (0/436)
com.stslex93.notescom.stslex93.notes.feature.edit_label.navigation.graph 0% @@ -174,16 +348,15 @@

Coverage Breakdown

0%
- (0/6) + (0/5)
0% - (0/13) + (0/2) @@ -191,36 +364,1213 @@

Coverage Breakdown

0% - (0/53) + (0/9) + +
+ + 0% + + + (0/52)
-
- - diff --git a/docs/reports/index_SORT_BY_CLASS.html b/docs/reports/index_SORT_BY_CLASS.html index d0fc612d..082a5e6a 100644 --- a/docs/reports/index_SORT_BY_CLASS.html +++ b/docs/reports/index_SORT_BY_CLASS.html @@ -3,21 +3,23 @@ - Coverage Report > Summary + + app Coverage Report > Summary - + +
-

Overall Coverage Summary

+

app: Overall Coverage Summary

@@ -46,42 +48,42 @@

Overall Coverage Summary

@@ -117,13 +119,13 @@

Coverage Breakdown

- + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + -
Package all classes - 0% + 9.2% - (0/11) + (12/131) - 0% + 12% - (0/18) + (47/393) - 0% + 10.9% - (0/54) + (14/128) - 0% + 24.1% - (0/59) + (235/976) - 0% + 5.9% - (0/545) + (234/3937)
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) @@ -131,7 +133,50 @@

Coverage Breakdown

0% - (0/6) + (0/4) + +
+ + 0% + + + (0/8) + + + + 0% + + + (0/10) + + + + 0% + + + (0/38) + +
com.stslex93.notes.core.core + + 0% + + + (0/1) + + + + 0% + + + (0/1) @@ -140,7 +185,43 @@

Coverage Breakdown

0% - (0/13) + (0/1) + +
+ + 0% + + + (0/7) + +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) @@ -153,13 +234,100 @@

Coverage Breakdown

com.stslex93.notes.uicom.stslex93.notes.core.label.repository 0% - (0/8) + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) @@ -175,7 +343,7 @@

Coverage Breakdown

0% - (0/54) + (0/14)
@@ -183,7 +351,42 @@

Coverage Breakdown

0% - (0/46) + (0/71) + +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) @@ -191,36 +394,1183 @@

Coverage Breakdown

0% - (0/492) + (0/36)
-
- - diff --git a/docs/reports/index_SORT_BY_CLASS_DESC.html b/docs/reports/index_SORT_BY_CLASS_DESC.html index 87ab8033..d2a1eb3c 100644 --- a/docs/reports/index_SORT_BY_CLASS_DESC.html +++ b/docs/reports/index_SORT_BY_CLASS_DESC.html @@ -3,21 +3,23 @@ - Coverage Report > Summary + + app Coverage Report > Summary - + +
-

Overall Coverage Summary

+

app: Overall Coverage Summary

@@ -46,42 +48,42 @@

Overall Coverage Summary

@@ -117,21 +119,178 @@

Coverage Breakdown

- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + -
Package all classes - 0% + 9.2% - (0/11) + (12/131) - 0% + 12% - (0/18) + (47/393) - 0% + 10.9% - (0/54) + (14/128) - 0% + 24.1% - (0/59) + (235/976) - 0% + 5.9% - (0/545) + (234/3937)
com.stslex93.notes.uicom.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + 0% - (0/8) + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269)
com.stslex93.notes.feature.home.ui.store 0% - (0/12) + (0/13) @@ -139,7 +298,7 @@

Coverage Breakdown

0% - (0/54) + (0/33)
@@ -147,7 +306,15 @@

Coverage Breakdown

0% - (0/46) + (0/16) + +
+ + 0% + + + (0/72) @@ -155,12 +322,12 @@

Coverage Breakdown

0% - (0/492) + (0/327)
com.stslex93.notescom.stslex93.notes.feature.home.ui.model 0% @@ -183,7 +350,122 @@

Coverage Breakdown

0%
- (0/13) + (0/26) + +
+ + 0% + + + (0/125) + +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) @@ -195,32 +477,1100 @@

Coverage Breakdown

-
- - diff --git a/docs/reports/index_SORT_BY_LINE.html b/docs/reports/index_SORT_BY_LINE.html index e1ef8f22..72f452f8 100644 --- a/docs/reports/index_SORT_BY_LINE.html +++ b/docs/reports/index_SORT_BY_LINE.html @@ -3,21 +3,23 @@ - Coverage Report > Summary + + app Coverage Report > Summary - + +
-

Overall Coverage Summary

+

app: Overall Coverage Summary

@@ -46,42 +48,42 @@

Overall Coverage Summary

@@ -117,13 +119,13 @@

Coverage Breakdown

- + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + -
Package all classes - 0% + 9.2% - (0/11) + (12/131) - 0% + 12% - (0/18) + (47/393) - 0% + 10.9% - (0/54) + (14/128) - 0% + 24.1% - (0/59) + (235/976) - 0% + 5.9% - (0/545) + (234/3937)
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) @@ -131,7 +133,50 @@

Coverage Breakdown

0% - (0/6) + (0/4) + +
+ + 0% + + + (0/8) + + + + 0% + + + (0/10) + + + + 0% + + + (0/38) + +
com.stslex93.notes.core.core + + 0% + + + (0/1) + + + + 0% + + + (0/1) @@ -140,7 +185,43 @@

Coverage Breakdown

0% - (0/13) + (0/1) + +
+ + 0% + + + (0/7) + +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) @@ -153,13 +234,100 @@

Coverage Breakdown

com.stslex93.notes.uicom.stslex93.notes.core.label.repository 0% - (0/8) + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) @@ -175,7 +343,7 @@

Coverage Breakdown

0% - (0/54) + (0/14)
@@ -183,7 +351,42 @@

Coverage Breakdown

0% - (0/46) + (0/71) + +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) @@ -191,36 +394,1183 @@

Coverage Breakdown

0% - (0/492) + (0/36)
-
- - diff --git a/docs/reports/index_SORT_BY_LINE_DESC.html b/docs/reports/index_SORT_BY_LINE_DESC.html index 6d8c9b5b..adbda3ca 100644 --- a/docs/reports/index_SORT_BY_LINE_DESC.html +++ b/docs/reports/index_SORT_BY_LINE_DESC.html @@ -3,21 +3,23 @@ - Coverage Report > Summary + + app Coverage Report > Summary - + +
-

Overall Coverage Summary

+

app: Overall Coverage Summary

@@ -46,42 +48,42 @@

Overall Coverage Summary

@@ -117,21 +119,178 @@

Coverage Breakdown

- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + -
Package all classes - 0% + 9.2% - (0/11) + (12/131) - 0% + 12% - (0/18) + (47/393) - 0% + 10.9% - (0/54) + (14/128) - 0% + 24.1% - (0/59) + (235/976) - 0% + 5.9% - (0/545) + (234/3937)
com.stslex93.notes.uicom.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + 0% - (0/8) + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103)
com.stslex93.notes.feature.home.ui.store 0% - (0/12) + (0/13) @@ -139,7 +298,7 @@

Coverage Breakdown

0% - (0/54) + (0/33)
@@ -147,7 +306,15 @@

Coverage Breakdown

0% - (0/46) + (0/16) + +
+ + 0% + + + (0/72) @@ -155,12 +322,12 @@

Coverage Breakdown

0% - (0/492) + (0/327)
com.stslex93.notescom.stslex93.notes.feature.home.ui.model 0% @@ -183,7 +350,122 @@

Coverage Breakdown

0%
- (0/13) + (0/26) + +
+ + 0% + + + (0/125) + +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) @@ -195,32 +477,1100 @@

Coverage Breakdown

-
- - diff --git a/docs/reports/index_SORT_BY_METHOD.html b/docs/reports/index_SORT_BY_METHOD.html index 0a2e7fdb..80ada62b 100644 --- a/docs/reports/index_SORT_BY_METHOD.html +++ b/docs/reports/index_SORT_BY_METHOD.html @@ -3,21 +3,23 @@ - Coverage Report > Summary + + app Coverage Report > Summary - + +
-

Overall Coverage Summary

+

app: Overall Coverage Summary

@@ -46,42 +48,42 @@

Overall Coverage Summary

@@ -117,13 +119,13 @@

Coverage Breakdown

- + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + -
Package all classes - 0% + 9.2% - (0/11) + (12/131) - 0% + 12% - (0/18) + (47/393) - 0% + 10.9% - (0/54) + (14/128) - 0% + 24.1% - (0/59) + (235/976) - 0% + 5.9% - (0/545) + (234/3937)
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) @@ -131,7 +133,50 @@

Coverage Breakdown

0% - (0/6) + (0/4) + +
+ + 0% + + + (0/8) + + + + 0% + + + (0/10) + + + + 0% + + + (0/38) + +
com.stslex93.notes.core.core + + 0% + + + (0/1) + + + + 0% + + + (0/1) @@ -140,7 +185,43 @@

Coverage Breakdown

0% - (0/13) + (0/1) + +
+ + 0% + + + (0/7) + +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) @@ -153,13 +234,100 @@

Coverage Breakdown

com.stslex93.notes.uicom.stslex93.notes.core.label.repository 0% - (0/8) + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) @@ -175,7 +343,7 @@

Coverage Breakdown

0% - (0/54) + (0/14)
@@ -183,7 +351,42 @@

Coverage Breakdown

0% - (0/46) + (0/71) + +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) @@ -191,36 +394,1183 @@

Coverage Breakdown

0% - (0/492) + (0/36)
-
- - diff --git a/docs/reports/index_SORT_BY_METHOD_DESC.html b/docs/reports/index_SORT_BY_METHOD_DESC.html index 3580a23a..05da376b 100644 --- a/docs/reports/index_SORT_BY_METHOD_DESC.html +++ b/docs/reports/index_SORT_BY_METHOD_DESC.html @@ -3,21 +3,23 @@ - Coverage Report > Summary + + app Coverage Report > Summary - + +
-

Overall Coverage Summary

+

app: Overall Coverage Summary

@@ -46,42 +48,42 @@

Overall Coverage Summary

@@ -117,21 +119,178 @@

Coverage Breakdown

- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + -
Package all classes - 0% + 9.2% - (0/11) + (12/131) - 0% + 12% - (0/18) + (47/393) - 0% + 10.9% - (0/54) + (14/128) - 0% + 24.1% - (0/59) + (235/976) - 0% + 5.9% - (0/545) + (234/3937)
com.stslex93.notes.uicom.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + 0% - (0/8) + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103)
com.stslex93.notes.feature.home.ui.store 0% - (0/12) + (0/13) @@ -139,7 +298,7 @@

Coverage Breakdown

0% - (0/54) + (0/33)
@@ -147,7 +306,15 @@

Coverage Breakdown

0% - (0/46) + (0/16) + +
+ + 0% + + + (0/72) @@ -155,12 +322,12 @@

Coverage Breakdown

0% - (0/492) + (0/327)
com.stslex93.notescom.stslex93.notes.feature.home.ui.model 0% @@ -183,7 +350,122 @@

Coverage Breakdown

0%
- (0/13) + (0/26) + +
+ + 0% + + + (0/125) + +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) @@ -195,32 +477,1100 @@

Coverage Breakdown

-
- - diff --git a/docs/reports/index_SORT_BY_NAME_DESC.html b/docs/reports/index_SORT_BY_NAME_DESC.html index 9215b1be..f2daad45 100644 --- a/docs/reports/index_SORT_BY_NAME_DESC.html +++ b/docs/reports/index_SORT_BY_NAME_DESC.html @@ -3,21 +3,23 @@ - Coverage Report > Summary + + app Coverage Report > Summary - + +
-

Overall Coverage Summary

+

app: Overall Coverage Summary

@@ -46,42 +48,42 @@

Overall Coverage Summary

@@ -117,13 +119,13 @@

Coverage Breakdown

- + - + + + + + + + + + + + + + + + + + + + + + + + -
Package all classes - 0% + 9.2% - (0/11) + (12/131) - 0% + 12% - (0/18) + (47/393) - 0% + 10.9% - (0/54) + (14/128) - 0% + 24.1% - (0/59) + (235/976) - 0% + 5.9% - (0/545) + (234/3937)
com.stslex93.notes.uicom.stslex93.notes.feature.home.ui.store 0% - (0/8) + (0/13) @@ -131,7 +133,7 @@

Coverage Breakdown

0% - (0/12) + (0/33)
@@ -139,7 +141,7 @@

Coverage Breakdown

0% - (0/54) + (0/16)
@@ -147,7 +149,7 @@

Coverage Breakdown

0% - (0/46) + (0/72)
@@ -155,12 +157,12 @@

Coverage Breakdown

0% - (0/492) + (0/327)
com.stslex93.notescom.stslex93.notes.feature.home.ui.model 0% @@ -183,7 +185,122 @@

Coverage Breakdown

0%
- (0/13) + (0/26) + +
+ + 0% + + + (0/125) + +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) @@ -195,32 +312,1265 @@

Coverage Breakdown

-
- - diff --git a/docs/reports/index_SORT_BY_STATEMENT.html b/docs/reports/index_SORT_BY_STATEMENT.html index d09e11f7..d576f1c2 100644 --- a/docs/reports/index_SORT_BY_STATEMENT.html +++ b/docs/reports/index_SORT_BY_STATEMENT.html @@ -3,21 +3,23 @@ - Coverage Report > Summary + + app Coverage Report > Summary - + +
-

Overall Coverage Summary

+

app: Overall Coverage Summary

@@ -46,42 +48,42 @@

Overall Coverage Summary

@@ -117,13 +119,13 @@

Coverage Breakdown

- + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + -
Package all classes - 0% + 9.2% - (0/11) + (12/131) - 0% + 12% - (0/18) + (47/393) - 0% + 10.9% - (0/54) + (14/128) - 0% + 24.1% - (0/59) + (235/976) - 0% + 5.9% - (0/545) + (234/3937)
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) @@ -131,7 +133,50 @@

Coverage Breakdown

0% - (0/6) + (0/4) + +
+ + 0% + + + (0/8) + + + + 0% + + + (0/10) + + + + 0% + + + (0/38) + +
com.stslex93.notes.core.core + + 0% + + + (0/1) + + + + 0% + + + (0/1) @@ -140,7 +185,43 @@

Coverage Breakdown

0% - (0/13) + (0/1) + +
+ + 0% + + + (0/7) + +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) @@ -153,13 +234,100 @@

Coverage Breakdown

com.stslex93.notes.uicom.stslex93.notes.core.label.repository 0% - (0/8) + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) @@ -175,7 +343,7 @@

Coverage Breakdown

0% - (0/54) + (0/14)
@@ -183,7 +351,42 @@

Coverage Breakdown

0% - (0/46) + (0/71) + +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) @@ -191,36 +394,1183 @@

Coverage Breakdown

0% - (0/492) + (0/36)
-
- - diff --git a/docs/reports/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/index_SORT_BY_STATEMENT_DESC.html index 11a87317..699f91df 100644 --- a/docs/reports/index_SORT_BY_STATEMENT_DESC.html +++ b/docs/reports/index_SORT_BY_STATEMENT_DESC.html @@ -3,21 +3,23 @@ - Coverage Report > Summary + + app Coverage Report > Summary - + +
-

Overall Coverage Summary

+

app: Overall Coverage Summary

@@ -46,42 +48,42 @@

Overall Coverage Summary

@@ -117,21 +119,178 @@

Coverage Breakdown

- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + -
Package all classes - 0% + 9.2% - (0/11) + (12/131) - 0% + 12% - (0/18) + (47/393) - 0% + 10.9% - (0/54) + (14/128) - 0% + 24.1% - (0/59) + (235/976) - 0% + 5.9% - (0/545) + (234/3937)
com.stslex93.notes.uicom.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + 0% - (0/8) + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103)
com.stslex93.notes.feature.home.ui.store 0% - (0/12) + (0/13) @@ -139,7 +298,7 @@

Coverage Breakdown

0% - (0/54) + (0/33)
@@ -147,7 +306,15 @@

Coverage Breakdown

0% - (0/46) + (0/16) + +
+ + 0% + + + (0/72) @@ -155,12 +322,12 @@

Coverage Breakdown

0% - (0/492) + (0/327)
com.stslex93.notescom.stslex93.notes.feature.home.ui.model 0% @@ -183,7 +350,122 @@

Coverage Breakdown

0%
- (0/13) + (0/26) + +
+ + 0% + + + (0/125) + +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) @@ -195,32 +477,1100 @@

Coverage Breakdown

-
- - diff --git a/docs/reports/js/highlight.min.js b/docs/reports/js/highlight.min.js new file mode 100644 index 00000000..e8873152 --- /dev/null +++ b/docs/reports/js/highlight.min.js @@ -0,0 +1,1388 @@ +/* + Highlight.js 10.7.2 (00233d63) + License: BSD-3-Clause + Copyright (c) 2006-2021, Ivan Sagalaev + + BSD 3-Clause License + + Copyright (c) 2006-2021, Ivan Sagalaev. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +var hljs=function(){"use strict";function e(t){ +return t instanceof Map?t.clear=t.delete=t.set=()=>{ +throw Error("map is read-only")}:t instanceof Set&&(t.add=t.clear=t.delete=()=>{ +throw Error("set is read-only") +}),Object.freeze(t),Object.getOwnPropertyNames(t).forEach((n=>{var i=t[n] +;"object"!=typeof i||Object.isFrozen(i)||e(i)})),t}var t=e,n=e;t.default=n +;class i{constructor(e){ +void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1} +ignoreMatch(){this.isMatchIgnored=!0}}function s(e){ +return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'") +}function a(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t] +;return t.forEach((e=>{for(const t in e)n[t]=e[t]})),n}const r=e=>!!e.kind +;class l{constructor(e,t){ +this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){ +this.buffer+=s(e)}openNode(e){if(!r(e))return;let t=e.kind +;e.sublanguage||(t=`${this.classPrefix}${t}`),this.span(t)}closeNode(e){ +r(e)&&(this.buffer+="")}value(){return this.buffer}span(e){ +this.buffer+=``}}class o{constructor(){this.rootNode={ +children:[]},this.stack=[this.rootNode]}get top(){ +return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){ +this.top.children.push(e)}openNode(e){const t={kind:e,children:[]} +;this.add(t),this.stack.push(t)}closeNode(){ +if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){ +for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)} +walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){ +return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t), +t.children.forEach((t=>this._walk(e,t))),e.closeNode(t)),e}static _collapse(e){ +"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{ +o._collapse(e)})))}}class c extends o{constructor(e){super(),this.options=e} +addKeyword(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNode())} +addText(e){""!==e&&this.add(e)}addSublanguage(e,t){const n=e.root +;n.kind=t,n.sublanguage=!0,this.add(n)}toHTML(){ +return new l(this,this.options).value()}finalize(){return!0}}function g(e){ +return e?"string"==typeof e?e:e.source:null} +const u=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./,h="[a-zA-Z]\\w*",d="[a-zA-Z_]\\w*",f="\\b\\d+(\\.\\d+)?",p="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",m="\\b(0b[01]+)",b={ +begin:"\\\\[\\s\\S]",relevance:0},E={className:"string",begin:"'",end:"'", +illegal:"\\n",contains:[b]},x={className:"string",begin:'"',end:'"', +illegal:"\\n",contains:[b]},v={ +begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ +},w=(e,t,n={})=>{const i=a({className:"comment",begin:e,end:t,contains:[]},n) +;return i.contains.push(v),i.contains.push({className:"doctag", +begin:"(?:TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",relevance:0}),i +},y=w("//","$"),N=w("/\\*","\\*/"),R=w("#","$");var _=Object.freeze({ +__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:h,UNDERSCORE_IDENT_RE:d, +NUMBER_RE:f,C_NUMBER_RE:p,BINARY_NUMBER_RE:m, +RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", +SHEBANG:(e={})=>{const t=/^#![ ]*\// +;return e.binary&&(e.begin=((...e)=>e.map((e=>g(e))).join(""))(t,/.*\b/,e.binary,/\b.*/)), +a({className:"meta",begin:t,end:/$/,relevance:0,"on:begin":(e,t)=>{ +0!==e.index&&t.ignoreMatch()}},e)},BACKSLASH_ESCAPE:b,APOS_STRING_MODE:E, +QUOTE_STRING_MODE:x,PHRASAL_WORDS_MODE:v,COMMENT:w,C_LINE_COMMENT_MODE:y, +C_BLOCK_COMMENT_MODE:N,HASH_COMMENT_MODE:R,NUMBER_MODE:{className:"number", +begin:f,relevance:0},C_NUMBER_MODE:{className:"number",begin:p,relevance:0}, +BINARY_NUMBER_MODE:{className:"number",begin:m,relevance:0},CSS_NUMBER_MODE:{ +className:"number", +begin:f+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", +relevance:0},REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{className:"regexp", +begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[b,{begin:/\[/,end:/\]/, +relevance:0,contains:[b]}]}]},TITLE_MODE:{className:"title",begin:h,relevance:0 +},UNDERSCORE_TITLE_MODE:{className:"title",begin:d,relevance:0},METHOD_GUARD:{ +begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0},END_SAME_AS_BEGIN:e=>Object.assign(e,{ +"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{ +t.data._beginMatch!==e[1]&&t.ignoreMatch()}})});function k(e,t){ +"."===e.input[e.index-1]&&t.ignoreMatch()}function M(e,t){ +t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)", +e.__beforeBegin=k,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords, +void 0===e.relevance&&(e.relevance=0))}function O(e,t){ +Array.isArray(e.illegal)&&(e.illegal=((...e)=>"("+e.map((e=>g(e))).join("|")+")")(...e.illegal)) +}function A(e,t){if(e.match){ +if(e.begin||e.end)throw Error("begin & end are not supported with match") +;e.begin=e.match,delete e.match}}function L(e,t){ +void 0===e.relevance&&(e.relevance=1)} +const I=["of","and","for","in","not","or","if","then","parent","list","value"] +;function j(e,t,n="keyword"){const i={} +;return"string"==typeof e?s(n,e.split(" ")):Array.isArray(e)?s(n,e):Object.keys(e).forEach((n=>{ +Object.assign(i,j(e[n],t,n))})),i;function s(e,n){ +t&&(n=n.map((e=>e.toLowerCase()))),n.forEach((t=>{const n=t.split("|") +;i[n[0]]=[e,B(n[0],n[1])]}))}}function B(e,t){ +return t?Number(t):(e=>I.includes(e.toLowerCase()))(e)?0:1} +function T(e,{plugins:t}){function n(t,n){ +return RegExp(g(t),"m"+(e.case_insensitive?"i":"")+(n?"g":""))}class i{ +constructor(){ +this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0} +addRule(e,t){ +t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]), +this.matchAt+=(e=>RegExp(e.toString()+"|").exec("").length-1)(e)+1}compile(){ +0===this.regexes.length&&(this.exec=()=>null) +;const e=this.regexes.map((e=>e[1]));this.matcherRe=n(((e,t="|")=>{let n=0 +;return e.map((e=>{n+=1;const t=n;let i=g(e),s="";for(;i.length>0;){ +const e=u.exec(i);if(!e){s+=i;break} +s+=i.substring(0,e.index),i=i.substring(e.index+e[0].length), +"\\"===e[0][0]&&e[1]?s+="\\"+(Number(e[1])+t):(s+=e[0],"("===e[0]&&n++)}return s +})).map((e=>`(${e})`)).join(t)})(e),!0),this.lastIndex=0}exec(e){ +this.matcherRe.lastIndex=this.lastIndex;const t=this.matcherRe.exec(e) +;if(!t)return null +;const n=t.findIndex(((e,t)=>t>0&&void 0!==e)),i=this.matchIndexes[n] +;return t.splice(0,n),Object.assign(t,i)}}class s{constructor(){ +this.rules=[],this.multiRegexes=[], +this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){ +if(this.multiRegexes[e])return this.multiRegexes[e];const t=new i +;return this.rules.slice(e).forEach((([e,n])=>t.addRule(e,n))), +t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){ +return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){ +this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){ +const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex +;let n=t.exec(e) +;if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{ +const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)} +return n&&(this.regexIndex+=n.position+1, +this.regexIndex===this.count&&this.considerAll()),n}} +if(e.compilerExtensions||(e.compilerExtensions=[]), +e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.") +;return e.classNameAliases=a(e.classNameAliases||{}),function t(i,r){const l=i +;if(i.isCompiled)return l +;[A].forEach((e=>e(i,r))),e.compilerExtensions.forEach((e=>e(i,r))), +i.__beforeBegin=null,[M,O,L].forEach((e=>e(i,r))),i.isCompiled=!0;let o=null +;if("object"==typeof i.keywords&&(o=i.keywords.$pattern, +delete i.keywords.$pattern), +i.keywords&&(i.keywords=j(i.keywords,e.case_insensitive)), +i.lexemes&&o)throw Error("ERR: Prefer `keywords.$pattern` to `mode.lexemes`, BOTH are not allowed. (see mode reference) ") +;return o=o||i.lexemes||/\w+/, +l.keywordPatternRe=n(o,!0),r&&(i.begin||(i.begin=/\B|\b/), +l.beginRe=n(i.begin),i.endSameAsBegin&&(i.end=i.begin), +i.end||i.endsWithParent||(i.end=/\B|\b/), +i.end&&(l.endRe=n(i.end)),l.terminatorEnd=g(i.end)||"", +i.endsWithParent&&r.terminatorEnd&&(l.terminatorEnd+=(i.end?"|":"")+r.terminatorEnd)), +i.illegal&&(l.illegalRe=n(i.illegal)), +i.contains||(i.contains=[]),i.contains=[].concat(...i.contains.map((e=>(e=>(e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((t=>a(e,{ +variants:null},t)))),e.cachedVariants?e.cachedVariants:S(e)?a(e,{ +starts:e.starts?a(e.starts):null +}):Object.isFrozen(e)?a(e):e))("self"===e?i:e)))),i.contains.forEach((e=>{t(e,l) +})),i.starts&&t(i.starts,r),l.matcher=(e=>{const t=new s +;return e.contains.forEach((e=>t.addRule(e.begin,{rule:e,type:"begin" +}))),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end" +}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t})(l),l}(e)}function S(e){ +return!!e&&(e.endsWithParent||S(e.starts))}function P(e){const t={ +props:["language","code","autodetect"],data:()=>({detectedLanguage:"", +unknownLanguage:!1}),computed:{className(){ +return this.unknownLanguage?"":"hljs "+this.detectedLanguage},highlighted(){ +if(!this.autoDetect&&!e.getLanguage(this.language))return console.warn(`The language "${this.language}" you specified could not be found.`), +this.unknownLanguage=!0,s(this.code);let t={} +;return this.autoDetect?(t=e.highlightAuto(this.code), +this.detectedLanguage=t.language):(t=e.highlight(this.language,this.code,this.ignoreIllegals), +this.detectedLanguage=this.language),t.value},autoDetect(){ +return!(this.language&&(e=this.autodetect,!e&&""!==e));var e}, +ignoreIllegals:()=>!0},render(e){return e("pre",{},[e("code",{ +class:this.className,domProps:{innerHTML:this.highlighted}})])}};return{ +Component:t,VuePlugin:{install(e){e.component("highlightjs",t)}}}}const D={ +"after:highlightElement":({el:e,result:t,text:n})=>{const i=H(e) +;if(!i.length)return;const a=document.createElement("div") +;a.innerHTML=t.value,t.value=((e,t,n)=>{let i=0,a="";const r=[];function l(){ +return e.length&&t.length?e[0].offset!==t[0].offset?e[0].offset"}function c(e){ +a+=""}function g(e){("start"===e.event?o:c)(e.node)} +for(;e.length||t.length;){let t=l() +;if(a+=s(n.substring(i,t[0].offset)),i=t[0].offset,t===e){r.reverse().forEach(c) +;do{g(t.splice(0,1)[0]),t=l()}while(t===e&&t.length&&t[0].offset===i) +;r.reverse().forEach(o) +}else"start"===t[0].event?r.push(t[0].node):r.pop(),g(t.splice(0,1)[0])} +return a+s(n.substr(i))})(i,H(a),n)}};function C(e){ +return e.nodeName.toLowerCase()}function H(e){const t=[];return function e(n,i){ +for(let s=n.firstChild;s;s=s.nextSibling)3===s.nodeType?i+=s.nodeValue.length:1===s.nodeType&&(t.push({ +event:"start",offset:i,node:s}),i=e(s,i),C(s).match(/br|hr|img|input/)||t.push({ +event:"stop",offset:i,node:s}));return i}(e,0),t}const $={},U=e=>{ +console.error(e)},z=(e,...t)=>{console.log("WARN: "+e,...t)},K=(e,t)=>{ +$[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),$[`${e}/${t}`]=!0) +},G=s,V=a,W=Symbol("nomatch");return(e=>{ +const n=Object.create(null),s=Object.create(null),a=[];let r=!0 +;const l=/(^(<[^>]+>|\t|)+|\n)/gm,o="Could not find the language '{}', did you forget to load/include a language module?",g={ +disableAutodetect:!0,name:"Plain text",contains:[]};let u={ +noHighlightRe:/^(no-?highlight)$/i, +languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-", +tabReplace:null,useBR:!1,languages:null,__emitter:c};function h(e){ +return u.noHighlightRe.test(e)}function d(e,t,n,i){let s="",a="" +;"object"==typeof t?(s=e, +n=t.ignoreIllegals,a=t.language,i=void 0):(K("10.7.0","highlight(lang, code, ...args) has been deprecated."), +K("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"), +a=e,s=t);const r={code:s,language:a};M("before:highlight",r) +;const l=r.result?r.result:f(r.language,r.code,n,i) +;return l.code=r.code,M("after:highlight",l),l}function f(e,t,s,l){ +function c(e,t){const n=v.case_insensitive?t[0].toLowerCase():t[0] +;return Object.prototype.hasOwnProperty.call(e.keywords,n)&&e.keywords[n]} +function g(){null!=R.subLanguage?(()=>{if(""===M)return;let e=null +;if("string"==typeof R.subLanguage){ +if(!n[R.subLanguage])return void k.addText(M) +;e=f(R.subLanguage,M,!0,_[R.subLanguage]),_[R.subLanguage]=e.top +}else e=p(M,R.subLanguage.length?R.subLanguage:null) +;R.relevance>0&&(O+=e.relevance),k.addSublanguage(e.emitter,e.language) +})():(()=>{if(!R.keywords)return void k.addText(M);let e=0 +;R.keywordPatternRe.lastIndex=0;let t=R.keywordPatternRe.exec(M),n="";for(;t;){ +n+=M.substring(e,t.index);const i=c(R,t);if(i){const[e,s]=i +;if(k.addText(n),n="",O+=s,e.startsWith("_"))n+=t[0];else{ +const n=v.classNameAliases[e]||e;k.addKeyword(t[0],n)}}else n+=t[0] +;e=R.keywordPatternRe.lastIndex,t=R.keywordPatternRe.exec(M)} +n+=M.substr(e),k.addText(n)})(),M=""}function h(e){ +return e.className&&k.openNode(v.classNameAliases[e.className]||e.className), +R=Object.create(e,{parent:{value:R}}),R}function d(e,t,n){let s=((e,t)=>{ +const n=e&&e.exec(t);return n&&0===n.index})(e.endRe,n);if(s){if(e["on:end"]){ +const n=new i(e);e["on:end"](t,n),n.isMatchIgnored&&(s=!1)}if(s){ +for(;e.endsParent&&e.parent;)e=e.parent;return e}} +if(e.endsWithParent)return d(e.parent,t,n)}function m(e){ +return 0===R.matcher.regexIndex?(M+=e[0],1):(I=!0,0)}function b(e){ +const n=e[0],i=t.substr(e.index),s=d(R,e,i);if(!s)return W;const a=R +;a.skip?M+=n:(a.returnEnd||a.excludeEnd||(M+=n),g(),a.excludeEnd&&(M=n));do{ +R.className&&k.closeNode(),R.skip||R.subLanguage||(O+=R.relevance),R=R.parent +}while(R!==s.parent) +;return s.starts&&(s.endSameAsBegin&&(s.starts.endRe=s.endRe), +h(s.starts)),a.returnEnd?0:n.length}let E={};function x(n,a){const l=a&&a[0] +;if(M+=n,null==l)return g(),0 +;if("begin"===E.type&&"end"===a.type&&E.index===a.index&&""===l){ +if(M+=t.slice(a.index,a.index+1),!r){const t=Error("0 width match regex") +;throw t.languageName=e,t.badRule=E.rule,t}return 1} +if(E=a,"begin"===a.type)return function(e){ +const t=e[0],n=e.rule,s=new i(n),a=[n.__beforeBegin,n["on:begin"]] +;for(const n of a)if(n&&(n(e,s),s.isMatchIgnored))return m(t) +;return n&&n.endSameAsBegin&&(n.endRe=RegExp(t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")), +n.skip?M+=t:(n.excludeBegin&&(M+=t), +g(),n.returnBegin||n.excludeBegin||(M=t)),h(n),n.returnBegin?0:t.length}(a) +;if("illegal"===a.type&&!s){ +const e=Error('Illegal lexeme "'+l+'" for mode "'+(R.className||"")+'"') +;throw e.mode=R,e}if("end"===a.type){const e=b(a);if(e!==W)return e} +if("illegal"===a.type&&""===l)return 1 +;if(L>1e5&&L>3*a.index)throw Error("potential infinite loop, way more iterations than matches") +;return M+=l,l.length}const v=N(e) +;if(!v)throw U(o.replace("{}",e)),Error('Unknown language: "'+e+'"') +;const w=T(v,{plugins:a});let y="",R=l||w;const _={},k=new u.__emitter(u);(()=>{ +const e=[];for(let t=R;t!==v;t=t.parent)t.className&&e.unshift(t.className) +;e.forEach((e=>k.openNode(e)))})();let M="",O=0,A=0,L=0,I=!1;try{ +for(R.matcher.considerAll();;){ +L++,I?I=!1:R.matcher.considerAll(),R.matcher.lastIndex=A +;const e=R.matcher.exec(t);if(!e)break;const n=x(t.substring(A,e.index),e) +;A=e.index+n}return x(t.substr(A)),k.closeAllNodes(),k.finalize(),y=k.toHTML(),{ +relevance:Math.floor(O),value:y,language:e,illegal:!1,emitter:k,top:R}}catch(n){ +if(n.message&&n.message.includes("Illegal"))return{illegal:!0,illegalBy:{ +msg:n.message,context:t.slice(A-100,A+100),mode:n.mode},sofar:y,relevance:0, +value:G(t),emitter:k};if(r)return{illegal:!1,relevance:0,value:G(t),emitter:k, +language:e,top:R,errorRaised:n};throw n}}function p(e,t){ +t=t||u.languages||Object.keys(n);const i=(e=>{const t={relevance:0, +emitter:new u.__emitter(u),value:G(e),illegal:!1,top:g} +;return t.emitter.addText(e),t})(e),s=t.filter(N).filter(k).map((t=>f(t,e,!1))) +;s.unshift(i);const a=s.sort(((e,t)=>{ +if(e.relevance!==t.relevance)return t.relevance-e.relevance +;if(e.language&&t.language){if(N(e.language).supersetOf===t.language)return 1 +;if(N(t.language).supersetOf===e.language)return-1}return 0})),[r,l]=a,o=r +;return o.second_best=l,o}const m={"before:highlightElement":({el:e})=>{ +u.useBR&&(e.innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n")) +},"after:highlightElement":({result:e})=>{ +u.useBR&&(e.value=e.value.replace(/\n/g,"
"))}},b=/^(<[^>]+>|\t)+/gm,E={ +"after:highlightElement":({result:e})=>{ +u.tabReplace&&(e.value=e.value.replace(b,(e=>e.replace(/\t/g,u.tabReplace))))}} +;function x(e){let t=null;const n=(e=>{let t=e.className+" " +;t+=e.parentNode?e.parentNode.className:"";const n=u.languageDetectRe.exec(t) +;if(n){const t=N(n[1]) +;return t||(z(o.replace("{}",n[1])),z("Falling back to no-highlight mode for this block.",e)), +t?n[1]:"no-highlight"}return t.split(/\s+/).find((e=>h(e)||N(e)))})(e) +;if(h(n))return;M("before:highlightElement",{el:e,language:n}),t=e +;const i=t.textContent,a=n?d(i,{language:n,ignoreIllegals:!0}):p(i) +;M("after:highlightElement",{el:e,result:a,text:i +}),e.innerHTML=a.value,((e,t,n)=>{const i=t?s[t]:n +;e.classList.add("hljs"),i&&e.classList.add(i)})(e,n,a.language),e.result={ +language:a.language,re:a.relevance,relavance:a.relevance +},a.second_best&&(e.second_best={language:a.second_best.language, +re:a.second_best.relevance,relavance:a.second_best.relevance})}const v=()=>{ +v.called||(v.called=!0, +K("10.6.0","initHighlighting() is deprecated. Use highlightAll() instead."), +document.querySelectorAll("pre code").forEach(x))};let w=!1;function y(){ +"loading"!==document.readyState?document.querySelectorAll("pre code").forEach(x):w=!0 +}function N(e){return e=(e||"").toLowerCase(),n[e]||n[s[e]]} +function R(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach((e=>{ +s[e.toLowerCase()]=t}))}function k(e){const t=N(e) +;return t&&!t.disableAutodetect}function M(e,t){const n=e;a.forEach((e=>{ +e[n]&&e[n](t)}))} +"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(()=>{ +w&&y()}),!1),Object.assign(e,{highlight:d,highlightAuto:p,highlightAll:y, +fixMarkup:e=>{ +return K("10.2.0","fixMarkup will be removed entirely in v11.0"),K("10.2.0","Please see https://github.com/highlightjs/highlight.js/issues/2534"), +t=e, +u.tabReplace||u.useBR?t.replace(l,(e=>"\n"===e?u.useBR?"
":e:u.tabReplace?e.replace(/\t/g,u.tabReplace):e)):t +;var t},highlightElement:x, +highlightBlock:e=>(K("10.7.0","highlightBlock will be removed entirely in v12.0"), +K("10.7.0","Please use highlightElement now."),x(e)),configure:e=>{ +e.useBR&&(K("10.3.0","'useBR' will be removed entirely in v11.0"), +K("10.3.0","Please see https://github.com/highlightjs/highlight.js/issues/2559")), +u=V(u,e)},initHighlighting:v,initHighlightingOnLoad:()=>{ +K("10.6.0","initHighlightingOnLoad() is deprecated. Use highlightAll() instead."), +w=!0},registerLanguage:(t,i)=>{let s=null;try{s=i(e)}catch(e){ +if(U("Language definition for '{}' could not be registered.".replace("{}",t)), +!r)throw e;U(e),s=g} +s.name||(s.name=t),n[t]=s,s.rawDefinition=i.bind(null,e),s.aliases&&R(s.aliases,{ +languageName:t})},unregisterLanguage:e=>{delete n[e] +;for(const t of Object.keys(s))s[t]===e&&delete s[t]}, +listLanguages:()=>Object.keys(n),getLanguage:N,registerAliases:R, +requireLanguage:e=>{ +K("10.4.0","requireLanguage will be removed entirely in v11."), +K("10.4.0","Please see https://github.com/highlightjs/highlight.js/pull/2844") +;const t=N(e);if(t)return t +;throw Error("The '{}' language is required, but not loaded.".replace("{}",e))}, +autoDetection:k,inherit:V,addPlugin:e=>{(e=>{ +e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{ +e["before:highlightBlock"](Object.assign({block:t.el},t)) +}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{ +e["after:highlightBlock"](Object.assign({block:t.el},t))})})(e),a.push(e)}, +vuePlugin:P(e).VuePlugin}),e.debugMode=()=>{r=!1},e.safeMode=()=>{r=!0 +},e.versionString="10.7.2";for(const e in _)"object"==typeof _[e]&&t(_[e]) +;return Object.assign(e,_),e.addPlugin(m),e.addPlugin(D),e.addPlugin(E),e})({}) +}();"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs); +hljs.registerLanguage("apache",(()=>{"use strict";return e=>{const n={ +className:"number",begin:/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(:\d{1,5})?/} +;return{name:"Apache config",aliases:["apacheconf"],case_insensitive:!0, +contains:[e.HASH_COMMENT_MODE,{className:"section",begin:/<\/?/,end:/>/, +contains:[n,{className:"number",begin:/:\d{1,5}/ +},e.inherit(e.QUOTE_STRING_MODE,{relevance:0})]},{className:"attribute", +begin:/\w+/,relevance:0,keywords:{ +nomarkup:"order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername" +},starts:{end:/$/,relevance:0,keywords:{literal:"on off all deny allow"}, +contains:[{className:"meta",begin:/\s\[/,end:/\]$/},{className:"variable", +begin:/[\$%]\{/,end:/\}/,contains:["self",{className:"number",begin:/[$%]\d+/}] +},n,{className:"number",begin:/\d+/},e.QUOTE_STRING_MODE]}}],illegal:/\S/}} +})()); +hljs.registerLanguage("bash",(()=>{"use strict";function e(...e){ +return e.map((e=>{return(s=e)?"string"==typeof s?s:s.source:null;var s +})).join("")}return s=>{const n={},t={begin:/\$\{/,end:/\}/,contains:["self",{ +begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{ +begin:e(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},t]});const a={ +className:"subst",begin:/\$\(/,end:/\)/,contains:[s.BACKSLASH_ESCAPE]},i={ +begin:/<<-?\s*(?=\w+)/,starts:{contains:[s.END_SAME_AS_BEGIN({begin:/(\w+)/, +end:/(\w+)/,className:"string"})]}},c={className:"string",begin:/"/,end:/"/, +contains:[s.BACKSLASH_ESCAPE,n,a]};a.contains.push(c);const o={begin:/\$\(\(/, +end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},s.NUMBER_MODE,n] +},r=s.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10 +}),l={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0, +contains:[s.inherit(s.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{ +name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z._-]+\b/, +keyword:"if then else elif fi for while in do done case esac function", +literal:"true false", +built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp" +},contains:[r,s.SHEBANG(),l,o,s.HASH_COMMENT_MODE,i,c,{className:"",begin:/\\"/ +},{className:"string",begin:/'/,end:/'/},n]}}})()); +hljs.registerLanguage("c",(()=>{"use strict";function e(e){ +return((...e)=>e.map((e=>(e=>e?"string"==typeof e?e:e.source:null)(e))).join(""))("(",e,")?") +}return t=>{const n=t.COMMENT("//","$",{contains:[{begin:/\\\n/}] +}),r="[a-zA-Z_]\\w*::",a="(decltype\\(auto\\)|"+e(r)+"[a-zA-Z_]\\w*"+e("<[^<>]+>")+")",i={ +className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},s={className:"string", +variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n", +contains:[t.BACKSLASH_ESCAPE]},{ +begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", +end:"'",illegal:"."},t.END_SAME_AS_BEGIN({ +begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},o={ +className:"number",variants:[{begin:"\\b(0b[01']+)"},{ +begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)" +},{ +begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" +}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{ +"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include" +},contains:[{begin:/\\\n/,relevance:0},t.inherit(s,{className:"meta-string"}),{ +className:"meta-string",begin:/<.*?>/},n,t.C_BLOCK_COMMENT_MODE]},l={ +className:"title",begin:e(r)+t.IDENT_RE,relevance:0 +},d=e(r)+t.IDENT_RE+"\\s*\\(",u={ +keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_t short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq", +built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr _Bool complex _Complex imaginary _Imaginary", +literal:"true false nullptr NULL"},m=[c,i,n,t.C_BLOCK_COMMENT_MODE,o,s],p={ +variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{ +beginKeywords:"new throw return else",end:/;/}],keywords:u,contains:m.concat([{ +begin:/\(/,end:/\)/,keywords:u,contains:m.concat(["self"]),relevance:0}]), +relevance:0},_={className:"function",begin:"("+a+"[\\*&\\s]+)+"+d, +returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:u,illegal:/[^\w\s\*&:<>.]/, +contains:[{begin:"decltype\\(auto\\)",keywords:u,relevance:0},{begin:d, +returnBegin:!0,contains:[l],relevance:0},{className:"params",begin:/\(/, +end:/\)/,keywords:u,relevance:0,contains:[n,t.C_BLOCK_COMMENT_MODE,s,o,i,{ +begin:/\(/,end:/\)/,keywords:u,relevance:0, +contains:["self",n,t.C_BLOCK_COMMENT_MODE,s,o,i]}] +},i,n,t.C_BLOCK_COMMENT_MODE,c]};return{name:"C",aliases:["h"],keywords:u, +disableAutodetect:!0,illegal:"",keywords:u,contains:["self",i]},{begin:t.IDENT_RE+"::",keywords:u},{ +className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/, +contains:[{beginKeywords:"final class struct"},t.TITLE_MODE]}]),exports:{ +preprocessor:c,strings:s,keywords:u}}}})()); +hljs.registerLanguage("coffeescript",(()=>{"use strict" +;const e=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],n=["true","false","null","undefined","NaN","Infinity"],a=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]) +;return r=>{const t={ +keyword:e.concat(["then","unless","until","loop","by","when","and","or","is","isnt","not"]).filter((i=["var","const","let","function","static"], +e=>!i.includes(e))),literal:n.concat(["yes","no","on","off"]), +built_in:a.concat(["npm","print"])};var i;const s="[A-Za-z$_][0-9A-Za-z$_]*",o={ +className:"subst",begin:/#\{/,end:/\}/,keywords:t +},c=[r.BINARY_NUMBER_MODE,r.inherit(r.C_NUMBER_MODE,{starts:{end:"(\\s*/)?", +relevance:0}}),{className:"string",variants:[{begin:/'''/,end:/'''/, +contains:[r.BACKSLASH_ESCAPE]},{begin:/'/,end:/'/,contains:[r.BACKSLASH_ESCAPE] +},{begin:/"""/,end:/"""/,contains:[r.BACKSLASH_ESCAPE,o]},{begin:/"/,end:/"/, +contains:[r.BACKSLASH_ESCAPE,o]}]},{className:"regexp",variants:[{begin:"///", +end:"///",contains:[o,r.HASH_COMMENT_MODE]},{begin:"//[gim]{0,3}(?=\\W)", +relevance:0},{begin:/\/(?![ *]).*?(?![\\]).\/[gim]{0,3}(?=\W)/}]},{begin:"@"+s +},{subLanguage:"javascript",excludeBegin:!0,excludeEnd:!0,variants:[{ +begin:"```",end:"```"},{begin:"`",end:"`"}]}];o.contains=c +;const l=r.inherit(r.TITLE_MODE,{begin:s}),d="(\\(.*\\)\\s*)?\\B[-=]>",g={ +className:"params",begin:"\\([^\\(]",returnBegin:!0,contains:[{begin:/\(/, +end:/\)/,keywords:t,contains:["self"].concat(c)}]};return{name:"CoffeeScript", +aliases:["coffee","cson","iced"],keywords:t,illegal:/\/\*/, +contains:c.concat([r.COMMENT("###","###"),r.HASH_COMMENT_MODE,{ +className:"function",begin:"^\\s*"+s+"\\s*=\\s*"+d,end:"[-=]>",returnBegin:!0, +contains:[l,g]},{begin:/[:\(,=]\s*/,relevance:0,contains:[{className:"function", +begin:d,end:"[-=]>",returnBegin:!0,contains:[g]}]},{className:"class", +beginKeywords:"class",end:"$",illegal:/[:="\[\]]/,contains:[{ +beginKeywords:"extends",endsWithParent:!0,illegal:/[:="\[\]]/,contains:[l]},l] +},{begin:s+":",end:":",returnBegin:!0,returnEnd:!0,relevance:0}])}}})()); +hljs.registerLanguage("cpp",(()=>{"use strict";function e(e){ +return t("(",e,")?")}function t(...e){return e.map((e=>{ +return(t=e)?"string"==typeof t?t:t.source:null;var t})).join("")}return n=>{ +const r=n.COMMENT("//","$",{contains:[{begin:/\\\n/}] +}),a="[a-zA-Z_]\\w*::",i="(decltype\\(auto\\)|"+e(a)+"[a-zA-Z_]\\w*"+e("<[^<>]+>")+")",s={ +className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},c={className:"string", +variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n", +contains:[n.BACKSLASH_ESCAPE]},{ +begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", +end:"'",illegal:"."},n.END_SAME_AS_BEGIN({ +begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},o={ +className:"number",variants:[{begin:"\\b(0b[01']+)"},{ +begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)" +},{ +begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" +}],relevance:0},l={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{ +"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include" +},contains:[{begin:/\\\n/,relevance:0},n.inherit(c,{className:"meta-string"}),{ +className:"meta-string",begin:/<.*?>/},r,n.C_BLOCK_COMMENT_MODE]},d={ +className:"title",begin:e(a)+n.IDENT_RE,relevance:0 +},u=e(a)+n.IDENT_RE+"\\s*\\(",m={ +keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_t short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq", +built_in:"_Bool _Complex _Imaginary", +_relevance_hints:["asin","atan2","atan","calloc","ceil","cosh","cos","exit","exp","fabs","floor","fmod","fprintf","fputs","free","frexp","auto_ptr","deque","list","queue","stack","vector","map","set","pair","bitset","multiset","multimap","unordered_set","fscanf","future","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","tolower","toupper","labs","ldexp","log10","log","malloc","realloc","memchr","memcmp","memcpy","memset","modf","pow","printf","putchar","puts","scanf","sinh","sin","snprintf","sprintf","sqrt","sscanf","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","tanh","tan","unordered_map","unordered_multiset","unordered_multimap","priority_queue","make_pair","array","shared_ptr","abort","terminate","abs","acos","vfprintf","vprintf","vsprintf","endl","initializer_list","unique_ptr","complex","imaginary","std","string","wstring","cin","cout","cerr","clog","stdin","stdout","stderr","stringstream","istringstream","ostringstream"], +literal:"true false nullptr NULL"},p={className:"function.dispatch",relevance:0, +keywords:m, +begin:t(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!while)/,n.IDENT_RE,(_=/\s*\(/, +t("(?=",_,")")))};var _;const g=[p,l,s,r,n.C_BLOCK_COMMENT_MODE,o,c],b={ +variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{ +beginKeywords:"new throw return else",end:/;/}],keywords:m,contains:g.concat([{ +begin:/\(/,end:/\)/,keywords:m,contains:g.concat(["self"]),relevance:0}]), +relevance:0},f={className:"function",begin:"("+i+"[\\*&\\s]+)+"+u, +returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:m,illegal:/[^\w\s\*&:<>.]/, +contains:[{begin:"decltype\\(auto\\)",keywords:m,relevance:0},{begin:u, +returnBegin:!0,contains:[d],relevance:0},{begin:/::/,relevance:0},{begin:/:/, +endsWithParent:!0,contains:[c,o]},{className:"params",begin:/\(/,end:/\)/, +keywords:m,relevance:0,contains:[r,n.C_BLOCK_COMMENT_MODE,c,o,s,{begin:/\(/, +end:/\)/,keywords:m,relevance:0,contains:["self",r,n.C_BLOCK_COMMENT_MODE,c,o,s] +}]},s,r,n.C_BLOCK_COMMENT_MODE,l]};return{name:"C++", +aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:m,illegal:"",keywords:m,contains:["self",s]},{begin:n.IDENT_RE+"::",keywords:m},{ +className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/, +contains:[{beginKeywords:"final class struct"},n.TITLE_MODE]}]),exports:{ +preprocessor:l,strings:c,keywords:m}}}})()); +hljs.registerLanguage("csharp",(()=>{"use strict";return e=>{const n={ +keyword:["abstract","as","base","break","case","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"].concat(["add","alias","and","ascending","async","await","by","descending","equals","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","remove","select","set","unmanaged","value|0","var","when","where","with","yield"]), +built_in:["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"], +literal:["default","false","null","true"]},a=e.inherit(e.TITLE_MODE,{ +begin:"[a-zA-Z](\\.?\\w)*"}),i={className:"number",variants:[{ +begin:"\\b(0b[01']+)"},{ +begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{ +begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" +}],relevance:0},s={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}] +},t=e.inherit(s,{illegal:/\n/}),r={className:"subst",begin:/\{/,end:/\}/, +keywords:n},l=e.inherit(r,{illegal:/\n/}),c={className:"string",begin:/\$"/, +end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/ +},e.BACKSLASH_ESCAPE,l]},o={className:"string",begin:/\$@"/,end:'"',contains:[{ +begin:/\{\{/},{begin:/\}\}/},{begin:'""'},r]},d=e.inherit(o,{illegal:/\n/, +contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},l]}) +;r.contains=[o,c,s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,i,e.C_BLOCK_COMMENT_MODE], +l.contains=[d,c,t,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,i,e.inherit(e.C_BLOCK_COMMENT_MODE,{ +illegal:/\n/})];const g={variants:[o,c,s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE] +},E={begin:"<",end:">",contains:[{beginKeywords:"in out"},a] +},_=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",b={ +begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"], +keywords:n,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0, +contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{ +begin:"\x3c!--|--\x3e"},{begin:""}]}] +}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#", +end:"$",keywords:{ +"meta-keyword":"if else elif endif define undef warning error line region endregion pragma checksum" +}},g,i,{beginKeywords:"class interface",relevance:0,end:/[{;=]/, +illegal:/[^\s:,]/,contains:[{beginKeywords:"where class" +},a,E,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace", +relevance:0,end:/[{;=]/,illegal:/[^\s:]/, +contains:[a,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{ +beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/, +contains:[a,E,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta", +begin:"^\\s*\\[",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{ +className:"meta-string",begin:/"/,end:/"/}]},{ +beginKeywords:"new return throw await else",relevance:0},{className:"function", +begin:"("+_+"\\s+)+"+e.IDENT_RE+"\\s*(<.+>\\s*)?\\(",returnBegin:!0, +end:/\s*[{;=]/,excludeEnd:!0,keywords:n,contains:[{ +beginKeywords:"public private protected static internal protected abstract async extern override unsafe virtual new sealed partial", +relevance:0},{begin:e.IDENT_RE+"\\s*(<.+>\\s*)?\\(",returnBegin:!0, +contains:[e.TITLE_MODE,E],relevance:0},{className:"params",begin:/\(/,end:/\)/, +excludeBegin:!0,excludeEnd:!0,keywords:n,relevance:0, +contains:[g,i,e.C_BLOCK_COMMENT_MODE] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},b]}}})()); +hljs.registerLanguage("css",(()=>{"use strict" +;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],t=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],i=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],o=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],r=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse() +;return n=>{const a=(e=>({IMPORTANT:{className:"meta",begin:"!important"}, +HEXCOLOR:{className:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"}, +ATTRIBUTE_SELECTOR_MODE:{className:"selector-attr",begin:/\[/,end:/\]/, +illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]} +}))(n),l=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE];return{name:"CSS", +case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"}, +classNameAliases:{keyframePosition:"selector-tag"}, +contains:[n.C_BLOCK_COMMENT_MODE,{begin:/-(webkit|moz|ms|o)-(?=[a-z])/ +},n.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0 +},{className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0 +},a.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{ +begin:":("+i.join("|")+")"},{begin:"::("+o.join("|")+")"}]},{ +className:"attribute",begin:"\\b("+r.join("|")+")\\b"},{begin:":",end:"[;}]", +contains:[a.HEXCOLOR,a.IMPORTANT,n.CSS_NUMBER_MODE,...l,{ +begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri" +},contains:[{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}] +},{className:"built_in",begin:/[\w-]+(?=\()/}]},{ +begin:(s=/@/,((...e)=>e.map((e=>(e=>e?"string"==typeof e?e:e.source:null)(e))).join(""))("(?=",s,")")), +end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword", +begin:/@-?\w[\w]*(-\w+)*/},{begin:/\s/,endsWithParent:!0,excludeEnd:!0, +relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only", +attribute:t.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute" +},...l,n.CSS_NUMBER_MODE]}]},{className:"selector-tag", +begin:"\\b("+e.join("|")+")\\b"}]};var s}})()); +hljs.registerLanguage("diff",(()=>{"use strict";return e=>({name:"Diff", +aliases:["patch"],contains:[{className:"meta",relevance:10,variants:[{ +begin:/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/},{begin:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{ +begin:/^--- +\d+,\d+ +----$/}]},{className:"comment",variants:[{begin:/Index: /, +end:/$/},{begin:/^index/,end:/$/},{begin:/={3,}/,end:/$/},{begin:/^-{3}/,end:/$/ +},{begin:/^\*{3} /,end:/$/},{begin:/^\+{3}/,end:/$/},{begin:/^\*{15}$/},{ +begin:/^diff --git/,end:/$/}]},{className:"addition",begin:/^\+/,end:/$/},{ +className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/, +end:/$/}]})})()); +hljs.registerLanguage("go",(()=>{"use strict";return e=>{const n={ +keyword:"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune", +literal:"true false iota nil", +built_in:"append cap close complex copy imag len make new panic print println real recover delete" +};return{name:"Go",aliases:["golang"],keywords:n,illegal:"{"use strict";function e(...e){ +return e.map((e=>{return(n=e)?"string"==typeof n?n:n.source:null;var n +})).join("")}return n=>{const a="HTTP/(2|1\\.[01])",s={className:"attribute", +begin:e("^",/[A-Za-z][A-Za-z0-9-]*/,"(?=\\:\\s)"),starts:{contains:[{ +className:"punctuation",begin:/: /,relevance:0,starts:{end:"$",relevance:0}}]} +},t=[s,{begin:"\\n\\n",starts:{subLanguage:[],endsWithParent:!0}}];return{ +name:"HTTP",aliases:["https"],illegal:/\S/,contains:[{begin:"^(?="+a+" \\d{3})", +end:/$/,contains:[{className:"meta",begin:a},{className:"number", +begin:"\\b\\d{3}\\b"}],starts:{end:/\b\B/,illegal:/\S/,contains:t}},{ +begin:"(?=^[A-Z]+ (.*?) "+a+"$)",end:/$/,contains:[{className:"string", +begin:" ",end:" ",excludeBegin:!0,excludeEnd:!0},{className:"meta",begin:a},{ +className:"keyword",begin:"[A-Z]+"}],starts:{end:/\b\B/,illegal:/\S/,contains:t} +},n.inherit(s,{relevance:0})]}}})()); +hljs.registerLanguage("ini",(()=>{"use strict";function e(e){ +return e?"string"==typeof e?e:e.source:null}function n(...n){ +return n.map((n=>e(n))).join("")}return s=>{const a={className:"number", +relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:s.NUMBER_RE}] +},i=s.COMMENT();i.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const t={ +className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/ +}]},r={className:"literal",begin:/\bon|off|true|false|yes|no\b/},l={ +className:"string",contains:[s.BACKSLASH_ESCAPE],variants:[{begin:"'''", +end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"' +},{begin:"'",end:"'"}]},c={begin:/\[/,end:/\]/,contains:[i,r,t,l,a,"self"], +relevance:0 +},g="("+[/[A-Za-z0-9_-]+/,/"(\\"|[^"])*"/,/'[^']*'/].map((n=>e(n))).join("|")+")" +;return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/, +contains:[i,{className:"section",begin:/\[+/,end:/\]+/},{ +begin:n(g,"(\\s*\\.\\s*",g,")*",n("(?=",/\s*=\s*[^#\s]/,")")),className:"attr", +starts:{end:/$/,contains:[i,c,r,t,l,a]}}]}}})()); +hljs.registerLanguage("java",(()=>{"use strict" +;var e="\\.([0-9](_*[0-9])*)",n="[0-9a-fA-F](_*[0-9a-fA-F])*",a={ +className:"number",variants:[{ +begin:`(\\b([0-9](_*[0-9])*)((${e})|\\.)?|(${e}))[eE][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:`\\b([0-9](_*[0-9])*)((${e})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{ +begin:`(${e})[fFdD]?\\b`},{begin:"\\b([0-9](_*[0-9])*)[fFdD]\\b"},{ +begin:`\\b0[xX]((${n})\\.?|(${n})?\\.(${n}))[pP][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${n})[lL]?\\b`},{ +begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}], +relevance:0};return e=>{ +var n="false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",s={ +className:"meta",begin:"@[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*", +contains:[{begin:/\(/,end:/\)/,contains:["self"]}]};const r=a;return{ +name:"Java",aliases:["jsp"],keywords:n,illegal:/<\/|#/, +contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/, +relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{ +begin:/import java\.[a-z]+\./,keywords:"import",relevance:2 +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{ +className:"class",beginKeywords:"class interface enum",end:/[{;=]/, +excludeEnd:!0,relevance:1,keywords:"class interface enum",illegal:/[:"\[\]]/, +contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{ +beginKeywords:"new throw return else",relevance:0},{className:"class", +begin:"record\\s+"+e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,excludeEnd:!0, +end:/[{;=]/,keywords:n,contains:[{beginKeywords:"record"},{ +begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0, +contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/, +keywords:n,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"function", +begin:"([\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*(<[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*(\\s*,\\s*[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*)*>)?\\s+)+"+e.UNDERSCORE_IDENT_RE+"\\s*\\(", +returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:n,contains:[{ +begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0, +contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/, +keywords:n,relevance:0, +contains:[s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,r,e.C_BLOCK_COMMENT_MODE] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},r,s]}}})()); +hljs.registerLanguage("javascript",(()=>{"use strict" +;const e="[A-Za-z$_][0-9A-Za-z$_]*",n=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],a=["true","false","null","undefined","NaN","Infinity"],s=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]) +;function r(e){return t("(?=",e,")")}function t(...e){return e.map((e=>{ +return(n=e)?"string"==typeof n?n:n.source:null;var n})).join("")}return i=>{ +const c=e,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/, +isTrulyOpeningTag:(e,n)=>{const a=e[0].length+e.index,s=e.input[a] +;"<"!==s?">"===s&&(((e,{after:n})=>{const a="", +returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{ +begin:i.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0 +},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:f}]}] +},{begin:/,/,relevance:0},{className:"",begin:/\s/,end:/\s*/,skip:!0},{ +variants:[{begin:"<>",end:""},{begin:o.begin,"on:begin":o.isTrulyOpeningTag, +end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0, +contains:["self"]}]}],relevance:0},{className:"function", +beginKeywords:"function",end:/[{;]/,excludeEnd:!0,keywords:l, +contains:["self",i.inherit(i.TITLE_MODE,{begin:c}),p],illegal:/%/},{ +beginKeywords:"while if switch catch for"},{className:"function", +begin:i.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", +returnBegin:!0,contains:[p,i.inherit(i.TITLE_MODE,{begin:c})]},{variants:[{ +begin:"\\."+c},{begin:"\\$"+c}],relevance:0},{className:"class", +beginKeywords:"class",end:/[{;=]/,excludeEnd:!0,illegal:/[:"[\]]/,contains:[{ +beginKeywords:"extends"},i.UNDERSCORE_TITLE_MODE]},{begin:/\b(?=constructor)/, +end:/[{;]/,excludeEnd:!0,contains:[i.inherit(i.TITLE_MODE,{begin:c}),"self",p] +},{begin:"(get|set)\\s+(?="+c+"\\()",end:/\{/,keywords:"get set", +contains:[i.inherit(i.TITLE_MODE,{begin:c}),{begin:/\(\)/},p]},{begin:/\$[(.]/}] +}}})()); +hljs.registerLanguage("json",(()=>{"use strict";return n=>{const e={ +literal:"true false null" +},i=[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],a=[n.QUOTE_STRING_MODE,n.C_NUMBER_MODE],l={ +end:",",endsWithParent:!0,excludeEnd:!0,contains:a,keywords:e},t={begin:/\{/, +end:/\}/,contains:[{className:"attr",begin:/"/,end:/"/, +contains:[n.BACKSLASH_ESCAPE],illegal:"\\n"},n.inherit(l,{begin:/:/ +})].concat(i),illegal:"\\S"},s={begin:"\\[",end:"\\]",contains:[n.inherit(l)], +illegal:"\\S"};return a.push(t,s),i.forEach((n=>{a.push(n)})),{name:"JSON", +contains:a,keywords:e,illegal:"\\S"}}})()); +hljs.registerLanguage("kotlin",(()=>{"use strict" +;var e="\\.([0-9](_*[0-9])*)",n="[0-9a-fA-F](_*[0-9a-fA-F])*",a={ +className:"number",variants:[{ +begin:`(\\b([0-9](_*[0-9])*)((${e})|\\.)?|(${e}))[eE][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:`\\b([0-9](_*[0-9])*)((${e})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{ +begin:`(${e})[fFdD]?\\b`},{begin:"\\b([0-9](_*[0-9])*)[fFdD]\\b"},{ +begin:`\\b0[xX]((${n})\\.?|(${n})?\\.(${n}))[pP][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${n})[lL]?\\b`},{ +begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}], +relevance:0};return e=>{const n={ +keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual", +built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing", +literal:"true false null"},i={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@" +},s={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},t={ +className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},r={className:"string", +variants:[{begin:'"""',end:'"""(?=[^"])',contains:[t,s]},{begin:"'",end:"'", +illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/, +contains:[e.BACKSLASH_ESCAPE,t,s]}]};s.contains.push(r);const l={ +className:"meta", +begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?" +},c={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/, +end:/\)/,contains:[e.inherit(r,{className:"meta-string"})]}] +},o=a,b=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),E={ +variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/, +contains:[]}]},d=E;return d.variants[1].contains=[E],E.variants[1].contains=[d], +{name:"Kotlin",aliases:["kt","kts"],keywords:n, +contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag", +begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,b,{className:"keyword", +begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol", +begin:/@\w+/}]}},i,l,c,{className:"function",beginKeywords:"fun",end:"[(]|$", +returnBegin:!0,excludeEnd:!0,keywords:n,relevance:5,contains:[{ +begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0, +contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin://, +keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/, +endsParent:!0,keywords:n,relevance:0,contains:[{begin:/:/,end:/[=,\/]/, +endsWithParent:!0,contains:[E,e.C_LINE_COMMENT_MODE,b],relevance:0 +},e.C_LINE_COMMENT_MODE,b,l,c,r,e.C_NUMBER_MODE]},b]},{className:"class", +beginKeywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0, +illegal:"extends implements",contains:[{ +beginKeywords:"public protected internal private constructor" +},e.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0, +excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,]|$/, +excludeBegin:!0,returnEnd:!0},l,c]},r,{className:"meta",begin:"^#!/usr/bin/env", +end:"$",illegal:"\n"},o]}}})()); +hljs.registerLanguage("less",(()=>{"use strict" +;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],t=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],i=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],o=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],n=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse(),r=i.concat(o) +;return a=>{const s=(e=>({IMPORTANT:{className:"meta",begin:"!important"}, +HEXCOLOR:{className:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"}, +ATTRIBUTE_SELECTOR_MODE:{className:"selector-attr",begin:/\[/,end:/\]/, +illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]} +}))(a),l=r,d="([\\w-]+|@\\{[\\w-]+\\})",c=[],g=[],b=e=>({className:"string", +begin:"~?"+e+".*?"+e}),m=(e,t,i)=>({className:e,begin:t,relevance:i}),u={ +$pattern:/[a-z-]+/,keyword:"and or not only",attribute:t.join(" ")},p={ +begin:"\\(",end:"\\)",contains:g,keywords:u,relevance:0} +;g.push(a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,b("'"),b('"'),a.CSS_NUMBER_MODE,{ +begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]", +excludeEnd:!0} +},s.HEXCOLOR,p,m("variable","@@?[\\w-]+",10),m("variable","@\\{[\\w-]+\\}"),m("built_in","~?`[^`]*?`"),{ +className:"attribute",begin:"[\\w-]+\\s*:",end:":",returnBegin:!0,excludeEnd:!0 +},s.IMPORTANT);const f=g.concat({begin:/\{/,end:/\}/,contains:c}),h={ +beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not" +}].concat(g)},w={begin:d+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0, +contains:[{begin:/-(webkit|moz|ms|o)-/},{className:"attribute", +begin:"\\b("+n.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0, +illegal:"[<=$]",relevance:0,contains:g}}]},v={className:"keyword", +begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b", +starts:{end:"[;{}]",keywords:u,returnEnd:!0,contains:g,relevance:0}},y={ +className:"variable",variants:[{begin:"@[\\w-]+\\s*:",relevance:15},{ +begin:"@[\\w-]+"}],starts:{end:"[;}]",returnEnd:!0,contains:f}},k={variants:[{ +begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:d,end:/\{/}],returnBegin:!0, +returnEnd:!0,illegal:"[<='$\"]",relevance:0, +contains:[a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,h,m("keyword","all\\b"),m("variable","@\\{[\\w-]+\\}"),{ +begin:"\\b("+e.join("|")+")\\b",className:"selector-tag" +},m("selector-tag",d+"%?",0),m("selector-id","#"+d),m("selector-class","\\."+d,0),m("selector-tag","&",0),s.ATTRIBUTE_SELECTOR_MODE,{ +className:"selector-pseudo",begin:":("+i.join("|")+")"},{ +className:"selector-pseudo",begin:"::("+o.join("|")+")"},{begin:"\\(",end:"\\)", +contains:f},{begin:"!important"}]},E={begin:`[\\w-]+:(:)?(${l.join("|")})`, +returnBegin:!0,contains:[k]} +;return c.push(a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,v,y,E,w,k),{ +name:"Less",case_insensitive:!0,illegal:"[=>'/<($\"]",contains:c}}})()); +hljs.registerLanguage("lua",(()=>{"use strict";return e=>{ +const t="\\[=*\\[",a="\\]=*\\]",n={begin:t,end:a,contains:["self"] +},o=[e.COMMENT("--(?!\\[=*\\[)","$"),e.COMMENT("--\\[=*\\[",a,{contains:[n], +relevance:10})];return{name:"Lua",keywords:{$pattern:e.UNDERSCORE_IDENT_RE, +literal:"true false nil", +keyword:"and break do else elseif end for goto if in local not or repeat return then until while", +built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove" +},contains:o.concat([{className:"function",beginKeywords:"function",end:"\\)", +contains:[e.inherit(e.TITLE_MODE,{ +begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params", +begin:"\\(",endsWithParent:!0,contains:o}].concat(o) +},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string", +begin:t,end:a,contains:[n],relevance:5}])}}})()); +hljs.registerLanguage("makefile",(()=>{"use strict";return e=>{const i={ +className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)", +contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%{"use strict";function e(e){ +return e?"string"==typeof e?e:e.source:null}function n(e){return a("(?=",e,")")} +function a(...n){return n.map((n=>e(n))).join("")}function s(...n){ +return"("+n.map((n=>e(n))).join("|")+")"}return e=>{ +const t=a(/[A-Z_]/,a("(",/[A-Z0-9_.-]*:/,")?"),/[A-Z0-9_.-]*/),i={ +className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},r={begin:/\s/, +contains:[{className:"meta-keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}] +},c=e.inherit(r,{begin:/\(/,end:/\)/}),l=e.inherit(e.APOS_STRING_MODE,{ +className:"meta-string"}),g=e.inherit(e.QUOTE_STRING_MODE,{ +className:"meta-string"}),m={endsWithParent:!0,illegal:/`]+/}]}] +}]};return{name:"HTML, XML", +aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"], +case_insensitive:!0,contains:[{className:"meta",begin://, +relevance:10,contains:[r,g,l,c,{begin:/\[/,end:/\]/,contains:[{className:"meta", +begin://,contains:[r,c,g,l]}]}]},e.COMMENT(//,{ +relevance:10}),{begin://,relevance:10},i,{ +className:"meta",begin:/<\?xml/,end:/\?>/,relevance:10},{className:"tag", +begin:/)/,end:/>/,keywords:{name:"style"},contains:[m],starts:{ +end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag", +begin:/)/,end:/>/,keywords:{name:"script"},contains:[m],starts:{ +end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{ +className:"tag",begin:/<>|<\/>/},{className:"tag", +begin:a(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name", +begin:t,relevance:0,starts:m}]},{className:"tag",begin:a(/<\//,n(a(t,/>/))), +contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0, +endsParent:!0}]}]}}})()); +hljs.registerLanguage("markdown",(()=>{"use strict";function n(...n){ +return n.map((n=>{return(e=n)?"string"==typeof e?e:e.source:null;var e +})).join("")}return e=>{const a={begin:/<\/?[A-Za-z_]/,end:">", +subLanguage:"xml",relevance:0},i={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0 +},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/, +relevance:2},{begin:n(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/), +relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{ +begin:/\[.+?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{ +className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0, +returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)", +excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[", +end:"\\]",excludeBegin:!0,excludeEnd:!0}]},s={className:"strong",contains:[], +variants:[{begin:/_{2}/,end:/_{2}/},{begin:/\*{2}/,end:/\*{2}/}]},c={ +className:"emphasis",contains:[],variants:[{begin:/\*(?!\*)/,end:/\*/},{ +begin:/_(?!_)/,end:/_/,relevance:0}]};s.contains.push(c),c.contains.push(s) +;let t=[a,i] +;return s.contains=s.contains.concat(t),c.contains=c.contains.concat(t), +t=t.concat(s,c),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{ +className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:t},{ +begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n", +contains:t}]}]},a,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)", +end:"\\s+",excludeEnd:!0},s,c,{className:"quote",begin:"^>\\s+",contains:t, +end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{ +begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{ +begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))", +contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{ +begin:"^[-\\*]{3,}",end:"$"},i,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{ +className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{ +className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}}})()); +hljs.registerLanguage("nginx",(()=>{"use strict";return e=>{const n={ +className:"variable",variants:[{begin:/\$\d+/},{begin:/\$\{/,end:/\}/},{ +begin:/[$@]/+e.UNDERSCORE_IDENT_RE}]},a={endsWithParent:!0,keywords:{ +$pattern:"[a-z/_]+", +literal:"on off yes no true false none blocked debug info notice warn error crit select break last permanent redirect kqueue rtsig epoll poll /dev/poll" +},relevance:0,illegal:"=>",contains:[e.HASH_COMMENT_MODE,{className:"string", +contains:[e.BACKSLASH_ESCAPE,n],variants:[{begin:/"/,end:/"/},{begin:/'/,end:/'/ +}]},{begin:"([a-z]+):/",end:"\\s",endsWithParent:!0,excludeEnd:!0,contains:[n] +},{className:"regexp",contains:[e.BACKSLASH_ESCAPE,n],variants:[{begin:"\\s\\^", +end:"\\s|\\{|;",returnEnd:!0},{begin:"~\\*?\\s+",end:"\\s|\\{|;",returnEnd:!0},{ +begin:"\\*(\\.[a-z\\-]+)+"},{begin:"([a-z\\-]+\\.)+\\*"}]},{className:"number", +begin:"\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b"},{ +className:"number",begin:"\\b\\d+[kKmMgGdshdwy]*\\b",relevance:0},n]};return{ +name:"Nginx config",aliases:["nginxconf"],contains:[e.HASH_COMMENT_MODE,{ +begin:e.UNDERSCORE_IDENT_RE+"\\s+\\{",returnBegin:!0,end:/\{/,contains:[{ +className:"section",begin:e.UNDERSCORE_IDENT_RE}],relevance:0},{ +begin:e.UNDERSCORE_IDENT_RE+"\\s",end:";|\\{",returnBegin:!0,contains:[{ +className:"attribute",begin:e.UNDERSCORE_IDENT_RE,starts:a}],relevance:0}], +illegal:"[^\\s\\}]"}}})()); +hljs.registerLanguage("objectivec",(()=>{"use strict";return e=>{ +const n=/[a-zA-Z@][a-zA-Z0-9_]*/,_={$pattern:n, +keyword:"@interface @class @protocol @implementation"};return{ +name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"], +keywords:{$pattern:n, +keyword:"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required @encode @package @import @defs @compatibility_alias __bridge __bridge_transfer __bridge_retained __bridge_retain __covariant __contravariant __kindof _Nonnull _Nullable _Null_unspecified __FUNCTION__ __PRETTY_FUNCTION__ __attribute__ getter setter retain unsafe_unretained nonnull nullable null_unspecified null_resettable class instancetype NS_DESIGNATED_INITIALIZER NS_UNAVAILABLE NS_REQUIRES_SUPER NS_RETURNS_INNER_POINTER NS_INLINE NS_AVAILABLE NS_DEPRECATED NS_ENUM NS_OPTIONS NS_SWIFT_UNAVAILABLE NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_REFINED_FOR_SWIFT NS_SWIFT_NAME NS_SWIFT_NOTHROW NS_DURING NS_HANDLER NS_ENDHANDLER NS_VALUERETURN NS_VOIDRETURN", +literal:"false true FALSE TRUE nil YES NO NULL", +built_in:"BOOL dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once" +},illegal:"/,end:/$/, +illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{ +className:"class",begin:"("+_.keyword.split(" ").join("|")+")\\b",end:/(\{|$)/, +excludeEnd:!0,keywords:_,contains:[e.UNDERSCORE_TITLE_MODE]},{ +begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}}})()); +hljs.registerLanguage("perl",(()=>{"use strict";function e(e){ +return e?"string"==typeof e?e:e.source:null}function n(...n){ +return n.map((n=>e(n))).join("")}function t(...n){ +return"("+n.map((n=>e(n))).join("|")+")"}return e=>{ +const r=/[dualxmsipngr]{0,12}/,s={$pattern:/[\w.]+/, +keyword:"abs accept alarm and atan2 bind binmode bless break caller chdir chmod chomp chop chown chr chroot close closedir connect continue cos crypt dbmclose dbmopen defined delete die do dump each else elsif endgrent endhostent endnetent endprotoent endpwent endservent eof eval exec exists exit exp fcntl fileno flock for foreach fork format formline getc getgrent getgrgid getgrnam gethostbyaddr gethostbyname gethostent getlogin getnetbyaddr getnetbyname getnetent getpeername getpgrp getpriority getprotobyname getprotobynumber getprotoent getpwent getpwnam getpwuid getservbyname getservbyport getservent getsockname getsockopt given glob gmtime goto grep gt hex if index int ioctl join keys kill last lc lcfirst length link listen local localtime log lstat lt ma map mkdir msgctl msgget msgrcv msgsnd my ne next no not oct open opendir or ord our pack package pipe pop pos print printf prototype push q|0 qq quotemeta qw qx rand read readdir readline readlink readpipe recv redo ref rename require reset return reverse rewinddir rindex rmdir say scalar seek seekdir select semctl semget semop send setgrent sethostent setnetent setpgrp setpriority setprotoent setpwent setservent setsockopt shift shmctl shmget shmread shmwrite shutdown sin sleep socket socketpair sort splice split sprintf sqrt srand stat state study sub substr symlink syscall sysopen sysread sysseek system syswrite tell telldir tie tied time times tr truncate uc ucfirst umask undef unless unlink unpack unshift untie until use utime values vec wait waitpid wantarray warn when while write x|0 xor y|0" +},i={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:s},a={begin:/->\{/, +end:/\}/},o={variants:[{begin:/\$\d/},{ +begin:n(/[$%@](\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])") +},{begin:/[$%@][^\s\w{]/,relevance:0}] +},c=[e.BACKSLASH_ESCAPE,i,o],g=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],l=(e,t,s="\\1")=>{ +const i="\\1"===s?s:n(s,t) +;return n(n("(?:",e,")"),t,/(?:\\.|[^\\\/])*?/,i,/(?:\\.|[^\\\/])*?/,s,r) +},d=(e,t,s)=>n(n("(?:",e,")"),t,/(?:\\.|[^\\\/])*?/,s,r),p=[o,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{ +endsWithParent:!0}),a,{className:"string",contains:c,variants:[{ +begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[", +end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{ +begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">", +relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'", +contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`", +contains:[e.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{ +begin:"-?\\w+\\s*=>",relevance:0}]},{className:"number", +begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b", +relevance:0},{ +begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*", +keywords:"split return print reverse grep",relevance:0, +contains:[e.HASH_COMMENT_MODE,{className:"regexp",variants:[{ +begin:l("s|tr|y",t(...g))},{begin:l("s|tr|y","\\(","\\)")},{ +begin:l("s|tr|y","\\[","\\]")},{begin:l("s|tr|y","\\{","\\}")}],relevance:2},{ +className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{ +begin:d("(?:m|qr)?",/\//,/\//)},{begin:d("m|qr",t(...g),/\1/)},{ +begin:d("m|qr",/\(/,/\)/)},{begin:d("m|qr",/\[/,/\]/)},{ +begin:d("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub", +end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE]},{ +begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$", +subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}] +}];return i.contains=p,a.contains=p,{name:"Perl",aliases:["pl","pm"],keywords:s, +contains:p}}})()); +hljs.registerLanguage("php",(()=>{"use strict";return e=>{const r={ +className:"variable", +begin:"\\$+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*(?![A-Za-z0-9])(?![$])"},t={ +className:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?[=]?/},{ +begin:/\?>/}]},a={className:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/, +end:/\}/}]},n=e.inherit(e.APOS_STRING_MODE,{illegal:null +}),i=e.inherit(e.QUOTE_STRING_MODE,{illegal:null, +contains:e.QUOTE_STRING_MODE.contains.concat(a)}),o=e.END_SAME_AS_BEGIN({ +begin:/<<<[ \t]*(\w+)\n/,end:/[ \t]*(\w+)\b/, +contains:e.QUOTE_STRING_MODE.contains.concat(a)}),l={className:"string", +contains:[e.BACKSLASH_ESCAPE,t],variants:[e.inherit(n,{begin:"b'",end:"'" +}),e.inherit(i,{begin:'b"',end:'"'}),i,n,o]},s={className:"number",variants:[{ +begin:"\\b0b[01]+(?:_[01]+)*\\b"},{begin:"\\b0o[0-7]+(?:_[0-7]+)*\\b"},{ +begin:"\\b0x[\\da-f]+(?:_[\\da-f]+)*\\b"},{ +begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:e[+-]?\\d+)?" +}],relevance:0},c={ +keyword:"__CLASS__ __DIR__ __FILE__ __FUNCTION__ __LINE__ __METHOD__ __NAMESPACE__ __TRAIT__ die echo exit include include_once print require require_once array abstract and as binary bool boolean break callable case catch class clone const continue declare default do double else elseif empty enddeclare endfor endforeach endif endswitch endwhile enum eval extends final finally float for foreach from global goto if implements instanceof insteadof int integer interface isset iterable list match|0 mixed new object or private protected public real return string switch throw trait try unset use var void while xor yield", +literal:"false null true", +built_in:"Error|0 AppendIterator ArgumentCountError ArithmeticError ArrayIterator ArrayObject AssertionError BadFunctionCallException BadMethodCallException CachingIterator CallbackFilterIterator CompileError Countable DirectoryIterator DivisionByZeroError DomainException EmptyIterator ErrorException Exception FilesystemIterator FilterIterator GlobIterator InfiniteIterator InvalidArgumentException IteratorIterator LengthException LimitIterator LogicException MultipleIterator NoRewindIterator OutOfBoundsException OutOfRangeException OuterIterator OverflowException ParentIterator ParseError RangeException RecursiveArrayIterator RecursiveCachingIterator RecursiveCallbackFilterIterator RecursiveDirectoryIterator RecursiveFilterIterator RecursiveIterator RecursiveIteratorIterator RecursiveRegexIterator RecursiveTreeIterator RegexIterator RuntimeException SeekableIterator SplDoublyLinkedList SplFileInfo SplFileObject SplFixedArray SplHeap SplMaxHeap SplMinHeap SplObjectStorage SplObserver SplObserver SplPriorityQueue SplQueue SplStack SplSubject SplSubject SplTempFileObject TypeError UnderflowException UnexpectedValueException UnhandledMatchError ArrayAccess Closure Generator Iterator IteratorAggregate Serializable Stringable Throwable Traversable WeakReference WeakMap Directory __PHP_Incomplete_Class parent php_user_filter self static stdClass" +};return{aliases:["php3","php4","php5","php6","php7","php8"], +case_insensitive:!0,keywords:c, +contains:[e.HASH_COMMENT_MODE,e.COMMENT("//","$",{contains:[t] +}),e.COMMENT("/\\*","\\*/",{contains:[{className:"doctag",begin:"@[A-Za-z]+"}] +}),e.COMMENT("__halt_compiler.+?;",!1,{endsWithParent:!0, +keywords:"__halt_compiler"}),t,{className:"keyword",begin:/\$this\b/},r,{ +begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function", +relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0, +illegal:"[$%\\[]",contains:[{beginKeywords:"use"},e.UNDERSCORE_TITLE_MODE,{ +begin:"=>",endsParent:!0},{className:"params",begin:"\\(",end:"\\)", +excludeBegin:!0,excludeEnd:!0,keywords:c, +contains:["self",r,e.C_BLOCK_COMMENT_MODE,l,s]}]},{className:"class",variants:[{ +beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait", +illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{ +beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{ +beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/, +contains:[e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"use",relevance:0,end:";", +contains:[e.UNDERSCORE_TITLE_MODE]},l,s]}}})()); +hljs.registerLanguage("php-template",(()=>{"use strict";return n=>({ +name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/, +subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"', +end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},n.inherit(n.APOS_STRING_MODE,{ +illegal:null,className:null,contains:null,skip:!0 +}),n.inherit(n.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null, +skip:!0})]}]})})()); +hljs.registerLanguage("plaintext",(()=>{"use strict";return t=>({ +name:"Plain text",aliases:["text","txt"],disableAutodetect:!0})})()); +hljs.registerLanguage("properties",(()=>{"use strict";return e=>{ +var n="[ \\t\\f]*",a=n+"[:=]"+n,t="("+a+"|[ \\t\\f]+)",r="([^\\\\\\W:= \\t\\f\\n]|\\\\.)+",s="([^\\\\:= \\t\\f\\n]|\\\\.)+",i={ +end:t,relevance:0,starts:{className:"string",end:/$/,relevance:0,contains:[{ +begin:"\\\\\\\\"},{begin:"\\\\\\n"}]}};return{name:".properties", +case_insensitive:!0,illegal:/\S/,contains:[e.COMMENT("^\\s*[!#]","$"),{ +returnBegin:!0,variants:[{begin:r+a,relevance:1},{begin:r+"[ \\t\\f]+", +relevance:0}],contains:[{className:"attr",begin:r,endsParent:!0,relevance:0}], +starts:i},{begin:s+t,returnBegin:!0,relevance:0,contains:[{className:"meta", +begin:s,endsParent:!0,relevance:0}],starts:i},{className:"attr",relevance:0, +begin:s+n+"$"}]}}})()); +hljs.registerLanguage("python",(()=>{"use strict";return e=>{const n={ +$pattern:/[A-Za-z]\w+|__\w+__/, +keyword:["and","as","assert","async","await","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"], +built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"], +literal:["__debug__","Ellipsis","False","None","NotImplemented","True"], +type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"] +},a={className:"meta",begin:/^(>>>|\.\.\.) /},i={className:"subst",begin:/\{/, +end:/\}/,keywords:n,illegal:/#/},s={begin:/\{\{/,relevance:0},t={ +className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{ +begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/, +contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{ +begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/, +contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{ +begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/, +contains:[e.BACKSLASH_ESCAPE,a,s,i]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/, +end:/"""/,contains:[e.BACKSLASH_ESCAPE,a,s,i]},{begin:/([uU]|[rR])'/,end:/'/, +relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{ +begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/, +end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/, +contains:[e.BACKSLASH_ESCAPE,s,i]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/, +contains:[e.BACKSLASH_ESCAPE,s,i]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE] +},r="[0-9](_?[0-9])*",l=`(\\b(${r}))?\\.(${r})|\\b(${r})\\.`,b={ +className:"number",relevance:0,variants:[{ +begin:`(\\b(${r})|(${l}))[eE][+-]?(${r})[jJ]?\\b`},{begin:`(${l})[jJ]?`},{ +begin:"\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?\\b"},{ +begin:"\\b0[bB](_?[01])+[lL]?\\b"},{begin:"\\b0[oO](_?[0-7])+[lL]?\\b"},{ +begin:"\\b0[xX](_?[0-9a-fA-F])+[lL]?\\b"},{begin:`\\b(${r})[jJ]\\b`}]},o={ +className:"comment", +begin:(d=/# type:/,((...e)=>e.map((e=>(e=>e?"string"==typeof e?e:e.source:null)(e))).join(""))("(?=",d,")")), +end:/$/,keywords:n,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/, +endsWithParent:!0}]},c={className:"params",variants:[{className:"", +begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0, +keywords:n,contains:["self",a,b,t,e.HASH_COMMENT_MODE]}]};var d +;return i.contains=[t,b,a],{name:"Python",aliases:["py","gyp","ipython"], +keywords:n,illegal:/(<\/|->|\?)|=>/,contains:[a,b,{begin:/\bself\b/},{ +beginKeywords:"if",relevance:0},t,o,e.HASH_COMMENT_MODE,{variants:[{ +className:"function",beginKeywords:"def"},{className:"class", +beginKeywords:"class"}],end:/:/,illegal:/[${=;\n,]/, +contains:[e.UNDERSCORE_TITLE_MODE,c,{begin:/->/,endsWithParent:!0,keywords:n}] +},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[b,c,t]}]}}})()); +hljs.registerLanguage("python-repl",(()=>{"use strict";return s=>({ +aliases:["pycon"],contains:[{className:"meta",starts:{end:/ |$/,starts:{end:"$", +subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{ +begin:/^\.\.\.(?=[ ]|$)/}]}]})})()); +hljs.registerLanguage("r",(()=>{"use strict";function e(...e){return e.map((e=>{ +return(a=e)?"string"==typeof a?a:a.source:null;var a})).join("")}return a=>{ +const n=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/;return{name:"R", +illegal:/->/,keywords:{$pattern:n, +keyword:"function if in break next repeat else for while", +literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10", +built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm" +},compilerExtensions:[(a,n)=>{if(!a.beforeMatch)return +;if(a.starts)throw Error("beforeMatch cannot be used with starts") +;const i=Object.assign({},a);Object.keys(a).forEach((e=>{delete a[e] +})),a.begin=e(i.beforeMatch,e("(?=",i.begin,")")),a.starts={relevance:0, +contains:[Object.assign(i,{endsParent:!0})]},a.relevance=0,delete i.beforeMatch +}],contains:[a.COMMENT(/#'/,/$/,{contains:[{className:"doctag", +begin:"@examples",starts:{contains:[{begin:/\n/},{begin:/#'\s*(?=@[a-zA-Z]+)/, +endsParent:!0},{begin:/#'/,end:/$/,excludeBegin:!0}]}},{className:"doctag", +begin:"@param",end:/$/,contains:[{className:"variable",variants:[{begin:n},{ +begin:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{className:"doctag", +begin:/@[a-zA-Z]+/},{className:"meta-keyword",begin:/\\[a-zA-Z]+/}] +}),a.HASH_COMMENT_MODE,{className:"string",contains:[a.BACKSLASH_ESCAPE], +variants:[a.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/ +}),a.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/ +}),a.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/ +}),a.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/ +}),a.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/ +}),a.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"', +relevance:0},{begin:"'",end:"'",relevance:0}]},{className:"number",relevance:0, +beforeMatch:/([^a-zA-Z0-9._])/,variants:[{ +match:/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/},{ +match:/0[xX][0-9a-fA-F]+([pP][+-]?\d+)?[Li]?/},{ +match:/(\d+(\.\d*)?|\.\d+)([eE][+-]?\d+)?[Li]?/}]},{begin:"%",end:"%"},{ +begin:e(/[a-zA-Z][a-zA-Z_0-9]*/,"\\s+<-\\s+")},{begin:"`",end:"`",contains:[{ +begin:/\\./}]}]}}})()); +hljs.registerLanguage("ruby",(()=>{"use strict";function e(...e){ +return e.map((e=>{return(n=e)?"string"==typeof n?n:n.source:null;var n +})).join("")}return n=>{ +const a="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",i={ +keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor __FILE__", +built_in:"proc lambda",literal:"true false nil"},s={className:"doctag", +begin:"@[A-Za-z]+"},r={begin:"#<",end:">"},b=[n.COMMENT("#","$",{contains:[s] +}),n.COMMENT("^=begin","^=end",{contains:[s],relevance:10 +}),n.COMMENT("^__END__","\\n$")],c={className:"subst",begin:/#\{/,end:/\}/, +keywords:i},t={className:"string",contains:[n.BACKSLASH_ESCAPE,c],variants:[{ +begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/, +end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{ +begin:/%[qQwWx]?/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/, +end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{ +begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{ +begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{ +begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{ +begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{ +begin:/<<[-~]?'?(\w+)\n(?:[^\n]*\n)*?\s*\1\b/,returnBegin:!0,contains:[{ +begin:/<<[-~]?'?/},n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/, +contains:[n.BACKSLASH_ESCAPE,c]})]}]},g="[0-9](_?[0-9])*",d={className:"number", +relevance:0,variants:[{ +begin:`\\b([1-9](_?[0-9])*|0)(\\.(${g}))?([eE][+-]?(${g})|r)?i?\\b`},{ +begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b" +},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{ +begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{ +begin:"\\b0(_?[0-7])+r?i?\\b"}]},l={className:"params",begin:"\\(",end:"\\)", +endsParent:!0,keywords:i},o=[t,{className:"class",beginKeywords:"class module", +end:"$|;",illegal:/=/,contains:[n.inherit(n.TITLE_MODE,{ +begin:"[A-Za-z_]\\w*(::\\w+)*(\\?|!)?"}),{begin:"<\\s*",contains:[{ +begin:"("+n.IDENT_RE+"::)?"+n.IDENT_RE,relevance:0}]}].concat(b)},{ +className:"function",begin:e(/def\s+/,(_=a+"\\s*(\\(|;|$)",e("(?=",_,")"))), +relevance:0,keywords:"def",end:"$|;",contains:[n.inherit(n.TITLE_MODE,{begin:a +}),l].concat(b)},{begin:n.IDENT_RE+"::"},{className:"symbol", +begin:n.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol", +begin:":(?!\\s)",contains:[t,{begin:a}],relevance:0},d,{className:"variable", +begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{ +className:"params",begin:/\|/,end:/\|/,relevance:0,keywords:i},{ +begin:"("+n.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{ +className:"regexp",contains:[n.BACKSLASH_ESCAPE,c],illegal:/\n/,variants:[{ +begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(", +end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}] +}].concat(r,b),relevance:0}].concat(r,b);var _;c.contains=o,l.contains=o +;const E=[{begin:/^\s*=>/,starts:{end:"$",contains:o}},{className:"meta", +begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+>|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])", +starts:{end:"$",contains:o}}];return b.unshift(r),{name:"Ruby", +aliases:["rb","gemspec","podspec","thor","irb"],keywords:i,illegal:/\/\*/, +contains:[n.SHEBANG({binary:"ruby"})].concat(E).concat(b).concat(o)}}})()); +hljs.registerLanguage("rust",(()=>{"use strict";return e=>{ +const n="([ui](8|16|32|64|128|size)|f(32|64))?",t="drop i8 i16 i32 i64 i128 isize u8 u16 u32 u64 u128 usize f32 f64 str char bool Box Option Result String Vec Copy Send Sized Sync Drop Fn FnMut FnOnce ToOwned Clone Debug PartialEq PartialOrd Eq Ord AsRef AsMut Into From Default Iterator Extend IntoIterator DoubleEndedIterator ExactSizeIterator SliceConcatExt ToString assert! assert_eq! bitflags! bytes! cfg! col! concat! concat_idents! debug_assert! debug_assert_eq! env! panic! file! format! format_args! include_bin! include_str! line! local_data_key! module_path! option_env! print! println! select! stringify! try! unimplemented! unreachable! vec! write! writeln! macro_rules! assert_ne! debug_assert_ne!" +;return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?", +keyword:"abstract as async await become box break const continue crate do dyn else enum extern false final fn for if impl in let loop macro match mod move mut override priv pub ref return self Self static struct super trait true try type typeof unsafe unsized use virtual where while yield", +literal:"true false Some None Ok Err",built_in:t},illegal:""}]}}})()); +hljs.registerLanguage("scss",(()=>{"use strict" +;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],t=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],i=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],o=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],r=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse() +;return a=>{const n=(e=>({IMPORTANT:{className:"meta",begin:"!important"}, +HEXCOLOR:{className:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"}, +ATTRIBUTE_SELECTOR_MODE:{className:"selector-attr",begin:/\[/,end:/\]/, +illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]} +}))(a),l=o,s=i,d="@[a-z-]+",c={className:"variable", +begin:"(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b"};return{name:"SCSS",case_insensitive:!0, +illegal:"[=/|']",contains:[a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,{ +className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{ +className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0 +},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag", +begin:"\\b("+e.join("|")+")\\b",relevance:0},{className:"selector-pseudo", +begin:":("+s.join("|")+")"},{className:"selector-pseudo", +begin:"::("+l.join("|")+")"},c,{begin:/\(/,end:/\)/,contains:[a.CSS_NUMBER_MODE] +},{className:"attribute",begin:"\\b("+r.join("|")+")\\b"},{ +begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b" +},{begin:":",end:";", +contains:[c,n.HEXCOLOR,a.CSS_NUMBER_MODE,a.QUOTE_STRING_MODE,a.APOS_STRING_MODE,n.IMPORTANT] +},{begin:"@(page|font-face)",lexemes:d,keywords:"@page @font-face"},{begin:"@", +end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/, +keyword:"and or not only",attribute:t.join(" ")},contains:[{begin:d, +className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute" +},c,a.QUOTE_STRING_MODE,a.APOS_STRING_MODE,n.HEXCOLOR,a.CSS_NUMBER_MODE]}]}} +})()); +hljs.registerLanguage("shell",(()=>{"use strict";return s=>({ +name:"Shell Session",aliases:["console"],contains:[{className:"meta", +begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#]/,starts:{end:/[^\\](?=\s*$)/, +subLanguage:"bash"}}]})})()); +hljs.registerLanguage("sql",(()=>{"use strict";function e(e){ +return e?"string"==typeof e?e:e.source:null}function r(...r){ +return r.map((r=>e(r))).join("")}function t(...r){ +return"("+r.map((r=>e(r))).join("|")+")"}return e=>{ +const n=e.COMMENT("--","$"),a=["true","false","unknown"],i=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],s=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],o=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],c=s,l=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update ","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year","add","asc","collation","desc","final","first","last","view"].filter((e=>!s.includes(e))),u={ +begin:r(/\b/,t(...c),/\s*\(/),keywords:{built_in:c}};return{name:"SQL", +case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/, +keyword:((e,{exceptions:r,when:t}={})=>{const n=t +;return r=r||[],e.map((e=>e.match(/\|\d+$/)||r.includes(e)?e:n(e)?e+"|0":e)) +})(l,{when:e=>e.length<3}),literal:a,type:i, +built_in:["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"] +},contains:[{begin:t(...o),keywords:{$pattern:/[\w\.]+/,keyword:l.concat(o), +literal:a,type:i}},{className:"type", +begin:t("double precision","large object","with timezone","without timezone") +},u,{className:"variable",begin:/@[a-z0-9]+/},{className:"string",variants:[{ +begin:/'/,end:/'/,contains:[{begin:/''/}]}]},{begin:/"/,end:/"/,contains:[{ +begin:/""/}]},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,{className:"operator", +begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0}]}}})()); +hljs.registerLanguage("swift",(()=>{"use strict";function e(e){ +return e?"string"==typeof e?e:e.source:null}function n(e){return a("(?=",e,")")} +function a(...n){return n.map((n=>e(n))).join("")}function t(...n){ +return"("+n.map((n=>e(n))).join("|")+")"} +const i=e=>a(/\b/,e,/\w$/.test(e)?/\b/:/\B/),s=["Protocol","Type"].map(i),u=["init","self"].map(i),c=["Any","Self"],r=["associatedtype","async","await",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","do","dynamic","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","lazy","let","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],o=["false","nil","true"],l=["assignment","associativity","higherThan","left","lowerThan","none","right"],m=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"],d=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],p=t(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),F=t(p,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),b=a(p,F,"*"),h=t(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),f=t(h,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),w=a(h,f,"*"),y=a(/[A-Z]/,f,"*"),g=["autoclosure",a(/convention\(/,t("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",a(/objc\(/,w,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","testable","UIApplicationMain","unknown","usableFromInline"],E=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"] +;return e=>{const p={match:/\s+/,relevance:0},h=e.COMMENT("/\\*","\\*/",{ +contains:["self"]}),v=[e.C_LINE_COMMENT_MODE,h],N={className:"keyword", +begin:a(/\./,n(t(...s,...u))),end:t(...s,...u),excludeBegin:!0},A={ +match:a(/\./,t(...r)),relevance:0 +},C=r.filter((e=>"string"==typeof e)).concat(["_|0"]),_={variants:[{ +className:"keyword", +match:t(...r.filter((e=>"string"!=typeof e)).concat(c).map(i),...u)}]},D={ +$pattern:t(/\b\w+/,/#\w+/),keyword:C.concat(m),literal:o},B=[N,A,_],k=[{ +match:a(/\./,t(...d)),relevance:0},{className:"built_in", +match:a(/\b/,t(...d),/(?=\()/)}],M={match:/->/,relevance:0},S=[M,{ +className:"operator",relevance:0,variants:[{match:b},{match:`\\.(\\.|${F})+`}] +}],x="([0-9a-fA-F]_*)+",I={className:"number",relevance:0,variants:[{ +match:"\\b(([0-9]_*)+)(\\.(([0-9]_*)+))?([eE][+-]?(([0-9]_*)+))?\\b"},{ +match:`\\b0x(${x})(\\.(${x}))?([pP][+-]?(([0-9]_*)+))?\\b`},{ +match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},O=(e="")=>({ +className:"subst",variants:[{match:a(/\\/,e,/[0\\tnr"']/)},{ +match:a(/\\/,e,/u\{[0-9a-fA-F]{1,8}\}/)}]}),T=(e="")=>({className:"subst", +match:a(/\\/,e,/[\t ]*(?:[\r\n]|\r\n)/)}),L=(e="")=>({className:"subst", +label:"interpol",begin:a(/\\/,e,/\(/),end:/\)/}),P=(e="")=>({begin:a(e,/"""/), +end:a(/"""/,e),contains:[O(e),T(e),L(e)]}),$=(e="")=>({begin:a(e,/"/), +end:a(/"/,e),contains:[O(e),L(e)]}),K={className:"string", +variants:[P(),P("#"),P("##"),P("###"),$(),$("#"),$("##"),$("###")]},j={ +match:a(/`/,w,/`/)},z=[j,{className:"variable",match:/\$\d+/},{ +className:"variable",match:`\\$${f}+`}],q=[{match:/(@|#)available/, +className:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:E, +contains:[...S,I,K]}]}},{className:"keyword",match:a(/@/,t(...g))},{ +className:"meta",match:a(/@/,w)}],U={match:n(/\b[A-Z]/),relevance:0,contains:[{ +className:"type", +match:a(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,f,"+") +},{className:"type",match:y,relevance:0},{match:/[?!]+/,relevance:0},{ +match:/\.\.\./,relevance:0},{match:a(/\s+&\s+/,n(y)),relevance:0}]},Z={ +begin://,keywords:D,contains:[...v,...B,...q,M,U]};U.contains.push(Z) +;const G={begin:/\(/,end:/\)/,relevance:0,keywords:D,contains:["self",{ +match:a(w,/\s*:/),keywords:"_|0",relevance:0 +},...v,...B,...k,...S,I,K,...z,...q,U]},H={beginKeywords:"func",contains:[{ +className:"title",match:t(j.match,w,b),endsParent:!0,relevance:0},p]},R={ +begin://,contains:[...v,U]},V={begin:/\(/,end:/\)/,keywords:D, +contains:[{begin:t(n(a(w,/\s*:/)),n(a(w,/\s+/,w,/\s*:/))),end:/:/,relevance:0, +contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:w}] +},...v,...B,...S,I,K,...q,U,G],endsParent:!0,illegal:/["']/},W={ +className:"function",match:n(/\bfunc\b/),contains:[H,R,V,p],illegal:[/\[/,/%/] +},X={className:"function",match:/\b(subscript|init[?!]?)\s*(?=[<(])/,keywords:{ +keyword:"subscript init init? init!",$pattern:/\w+[?!]?/},contains:[R,V,p], +illegal:/\[|%/},J={beginKeywords:"operator",end:e.MATCH_NOTHING_RE,contains:[{ +className:"title",match:b,endsParent:!0,relevance:0}]},Q={ +beginKeywords:"precedencegroup",end:e.MATCH_NOTHING_RE,contains:[{ +className:"title",match:y,relevance:0},{begin:/{/,end:/}/,relevance:0, +endsParent:!0,keywords:[...l,...o],contains:[U]}]};for(const e of K.variants){ +const n=e.contains.find((e=>"interpol"===e.label));n.keywords=D +;const a=[...B,...k,...S,I,K,...z];n.contains=[...a,{begin:/\(/,end:/\)/, +contains:["self",...a]}]}return{name:"Swift",keywords:D,contains:[...v,W,X,{ +className:"class",beginKeywords:"struct protocol class extension enum", +end:"\\{",excludeEnd:!0,keywords:D,contains:[e.inherit(e.TITLE_MODE,{ +begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/}),...B]},J,Q,{ +beginKeywords:"import",end:/$/,contains:[...v],relevance:0 +},...B,...k,...S,I,K,...z,...q,U,G]}}})()); +hljs.registerLanguage("typescript",(()=>{"use strict" +;const e="[A-Za-z$_][0-9A-Za-z$_]*",n=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],a=["true","false","null","undefined","NaN","Infinity"],s=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]) +;function t(e){return r("(?=",e,")")}function r(...e){return e.map((e=>{ +return(n=e)?"string"==typeof n?n:n.source:null;var n})).join("")}return i=>{ +const c={$pattern:e, +keyword:n.concat(["type","namespace","typedef","interface","public","private","protected","implements","declare","abstract","readonly"]), +literal:a, +built_in:s.concat(["any","void","number","boolean","string","object","never","enum"]) +},o={className:"meta",begin:"@[A-Za-z$_][0-9A-Za-z$_]*"},l=(e,n,a)=>{ +const s=e.contains.findIndex((e=>e.label===n)) +;if(-1===s)throw Error("can not find mode to replace");e.contains.splice(s,1,a) +},b=(i=>{const c=e,o={begin:/<[A-Za-z0-9\\._:-]+/, +end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,n)=>{ +const a=e[0].length+e.index,s=e.input[a];"<"!==s?">"===s&&(((e,{after:n})=>{ +const a="", +returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{ +begin:i.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0 +},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:f}]}] +},{begin:/,/,relevance:0},{className:"",begin:/\s/,end:/\s*/,skip:!0},{ +variants:[{begin:"<>",end:""},{begin:o.begin,"on:begin":o.isTrulyOpeningTag, +end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0, +contains:["self"]}]}],relevance:0},{className:"function", +beginKeywords:"function",end:/[{;]/,excludeEnd:!0,keywords:l, +contains:["self",i.inherit(i.TITLE_MODE,{begin:c}),A],illegal:/%/},{ +beginKeywords:"while if switch catch for"},{className:"function", +begin:i.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", +returnBegin:!0,contains:[A,i.inherit(i.TITLE_MODE,{begin:c})]},{variants:[{ +begin:"\\."+c},{begin:"\\$"+c}],relevance:0},{className:"class", +beginKeywords:"class",end:/[{;=]/,excludeEnd:!0,illegal:/[:"[\]]/,contains:[{ +beginKeywords:"extends"},i.UNDERSCORE_TITLE_MODE]},{begin:/\b(?=constructor)/, +end:/[{;]/,excludeEnd:!0,contains:[i.inherit(i.TITLE_MODE,{begin:c}),"self",A] +},{begin:"(get|set)\\s+(?="+c+"\\()",end:/\{/,keywords:"get set", +contains:[i.inherit(i.TITLE_MODE,{begin:c}),{begin:/\(\)/},A]},{begin:/\$[(.]/}] +}})(i) +;return Object.assign(b.keywords,c),b.exports.PARAMS_CONTAINS.push(o),b.contains=b.contains.concat([o,{ +beginKeywords:"namespace",end:/\{/,excludeEnd:!0},{beginKeywords:"interface", +end:/\{/,excludeEnd:!0,keywords:"interface extends" +}]),l(b,"shebang",i.SHEBANG()),l(b,"use_strict",{className:"meta",relevance:10, +begin:/^\s*['"]use strict['"]/ +}),b.contains.find((e=>"function"===e.className)).relevance=0,Object.assign(b,{ +name:"TypeScript",aliases:["ts","tsx"]}),b}})()); +hljs.registerLanguage("vbnet",(()=>{"use strict";function e(e){ +return e?"string"==typeof e?e:e.source:null}function n(...n){ +return n.map((n=>e(n))).join("")}function t(...n){ +return"("+n.map((n=>e(n))).join("|")+")"}return e=>{ +const a=/\d{1,2}\/\d{1,2}\/\d{4}/,i=/\d{4}-\d{1,2}-\d{1,2}/,s=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,r=/\d{1,2}(:\d{1,2}){1,2}/,o={ +className:"literal",variants:[{begin:n(/# */,t(i,a),/ *#/)},{ +begin:n(/# */,r,/ *#/)},{begin:n(/# */,s,/ *#/)},{ +begin:n(/# */,t(i,a),/ +/,t(s,r),/ *#/)}]},l=e.COMMENT(/'''/,/$/,{contains:[{ +className:"doctag",begin:/<\/?/,end:/>/}]}),c=e.COMMENT(null,/$/,{variants:[{ +begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET", +aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{ +keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield", +built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort", +type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort", +literal:"true false nothing"}, +illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[{ +className:"string",begin:/"(""|[^/n])"C\b/},{className:"string",begin:/"/, +end:/"/,illegal:/\n/,contains:[{begin:/""/}]},o,{className:"number",relevance:0, +variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/ +},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{ +begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},{ +className:"label",begin:/^\w+:/},l,c,{className:"meta", +begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/, +end:/$/,keywords:{ +"meta-keyword":"const disable else elseif enable end externalsource if region then" +},contains:[c]}]}}})()); +hljs.registerLanguage("yaml",(()=>{"use strict";return e=>{ +var n="true false yes no null",a="[\\w#;/?:@&=+$,.~*'()[\\]]+",s={ +className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/ +},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable", +variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},i=e.inherit(s,{ +variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),l={ +end:",",endsWithParent:!0,excludeEnd:!0,keywords:n,relevance:0},t={begin:/\{/, +end:/\}/,contains:[l],illegal:"\\n",relevance:0},g={begin:"\\[",end:"\\]", +contains:[l],illegal:"\\n",relevance:0},b=[{className:"attr",variants:[{ +begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{ +begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},{className:"meta",begin:"^---\\s*$", +relevance:10},{className:"string", +begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{ +begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0, +relevance:0},{className:"type",begin:"!\\w+!"+a},{className:"type", +begin:"!<"+a+">"},{className:"type",begin:"!"+a},{className:"type",begin:"!!"+a +},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta", +begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)", +relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},{ +className:"number", +begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b" +},{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},t,g,s],r=[...b] +;return r.pop(),r.push(i),l.contains=r,{name:"YAML",case_insensitive:!0, +aliases:["yml"],contains:b}}})()); \ No newline at end of file diff --git a/docs/reports/js/highlight.pack.js b/docs/reports/js/highlight.pack.js deleted file mode 100644 index 9d278973..00000000 --- a/docs/reports/js/highlight.pack.js +++ /dev/null @@ -1 +0,0 @@ -var hljs=new function(){function l(o){return o.replace(/&/gm,"&").replace(//gm,">")}function b(p){for(var o=p.firstChild;o;o=o.nextSibling){if(o.nodeName=="CODE"){return o}if(!(o.nodeType==3&&o.nodeValue.match(/\s+/))){break}}}function h(p,o){return Array.prototype.map.call(p.childNodes,function(q){if(q.nodeType==3){return o?q.nodeValue.replace(/\n/g,""):q.nodeValue}if(q.nodeName=="BR"){return"\n"}return h(q,o)}).join("")}function a(q){var p=(q.className+" "+q.parentNode.className).split(/\s+/);p=p.map(function(r){return r.replace(/^language-/,"")});for(var o=0;o"}while(x.length||v.length){var u=t().splice(0,1)[0];y+=l(w.substr(p,u.offset-p));p=u.offset;if(u.event=="start"){y+=s(u.node);r.push(u.node)}else{if(u.event=="stop"){var o,q=r.length;do{q--;o=r[q];y+=("")}while(o!=u.node);r.splice(q,1);while(q'+L[0]+"
"}else{r+=L[0]}N=A.lR.lastIndex;L=A.lR.exec(K)}return r+K.substr(N)}function z(){if(A.sL&&!e[A.sL]){return l(w)}var r=A.sL?d(A.sL,w):g(w);if(A.r>0){v+=r.keyword_count;B+=r.r}return''+r.value+""}function J(){return A.sL!==undefined?z():G()}function I(L,r){var K=L.cN?'':"";if(L.rB){x+=K;w=""}else{if(L.eB){x+=l(r)+K;w=""}else{x+=K;w=r}}A=Object.create(L,{parent:{value:A}});B+=L.r}function C(K,r){w+=K;if(r===undefined){x+=J();return 0}var L=o(r,A);if(L){x+=J();I(L,r);return L.rB?0:r.length}var M=s(A,r);if(M){if(!(M.rE||M.eE)){w+=r}x+=J();do{if(A.cN){x+=""}A=A.parent}while(A!=M.parent);if(M.eE){x+=l(r)}w="";if(M.starts){I(M.starts,"")}return M.rE?0:r.length}if(t(r,A)){throw"Illegal"}w+=r;return r.length||1}var F=e[D];f(F);var A=F;var w="";var B=0;var v=0;var x="";try{var u,q,p=0;while(true){A.t.lastIndex=p;u=A.t.exec(E);if(!u){break}q=C(E.substr(p,u.index-p),u[0]);p=u.index+q}C(E.substr(p));return{r:B,keyword_count:v,value:x,language:D}}catch(H){if(H=="Illegal"){return{r:0,keyword_count:0,value:l(E)}}else{throw H}}}function g(s){var o={keyword_count:0,r:0,value:l(s)};var q=o;for(var p in e){if(!e.hasOwnProperty(p)){continue}var r=d(p,s);r.language=p;if(r.keyword_count+r.r>q.keyword_count+q.r){q=r}if(r.keyword_count+r.r>o.keyword_count+o.r){q=o;o=r}}if(q.language){o.second_best=q}return o}function i(q,p,o){if(p){q=q.replace(/^((<[^>]+>|\t)+)/gm,function(r,v,u,t){return v.replace(/\t/g,p)})}if(o){q=q.replace(/\n/g,"
")}return q}function m(r,u,p){var v=h(r,p);var t=a(r);if(t=="no-highlight"){return}var w=t?d(t,v):g(v);t=w.language;var o=c(r);if(o.length){var q=document.createElement("pre");q.innerHTML=w.value;w.value=j(o,c(q),v)}w.value=i(w.value,u,p);var s=r.className;if(!s.match("(\\s|^)(language-)?"+t+"(\\s|$)")){s=s?(s+" "+t):t}r.innerHTML=w.value;r.className=s;r.result={language:t,kw:w.keyword_count,re:w.r};if(w.second_best){r.second_best={language:w.second_best.language,kw:w.second_best.keyword_count,re:w.second_best.r}}}function n(){if(n.called){return}n.called=true;Array.prototype.map.call(document.getElementsByTagName("pre"),b).filter(Boolean).forEach(function(o){m(o,hljs.tabReplace)})}function k(){window.addEventListener("DOMContentLoaded",n,false);window.addEventListener("load",n,false)}var e={};this.LANGUAGES=e;this.highlight=d;this.highlightAuto=g;this.fixMarkup=i;this.highlightBlock=m;this.initHighlighting=n;this.initHighlightingOnLoad=k;this.IR="[a-zA-Z][a-zA-Z0-9_]*";this.UIR="[a-zA-Z_][a-zA-Z0-9_]*";this.NR="\\b\\d+(\\.\\d+)?";this.CNR="(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)";this.BNR="\\b(0b[01]+)";this.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|\\.|-|-=|/|/=|:|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~";this.BE={b:"\\\\[\\s\\S]",r:0};this.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[this.BE],r:0};this.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[this.BE],r:0};this.CLCM={cN:"comment",b:"//",e:"$"};this.CBLCLM={cN:"comment",b:"/\\*",e:"\\*/"};this.HCM={cN:"comment",b:"#",e:"$"};this.NM={cN:"number",b:this.NR,r:0};this.CNM={cN:"number",b:this.CNR,r:0};this.BNM={cN:"number",b:this.BNR,r:0};this.inherit=function(q,r){var o={};for(var p in q){o[p]=q[p]}if(r){for(var p in r){o[p]=r[p]}}return o}}();hljs.LANGUAGES.actionscript=function(a){var d="[a-zA-Z_$][a-zA-Z0-9_$]*";var c="([*]|[a-zA-Z_$][a-zA-Z0-9_$]*)";var e={cN:"rest_arg",b:"[.]{3}",e:d,r:10};var b={cN:"title",b:d};return{k:{keyword:"as break case catch class const continue default delete do dynamic each else extends final finally for function get if implements import in include instanceof interface internal is namespace native new override package private protected public return set static super switch this throw try typeof use var void while with",literal:"true false null undefined"},c:[a.ASM,a.QSM,a.CLCM,a.CBLCLM,a.CNM,{cN:"package",bWK:true,e:"{",k:"package",c:[b]},{cN:"class",bWK:true,e:"{",k:"class interface",c:[{bWK:true,k:"extends implements"},b]},{cN:"preprocessor",bWK:true,e:";",k:"import include"},{cN:"function",bWK:true,e:"[{;]",k:"function",i:"\\S",c:[b,{cN:"params",b:"\\(",e:"\\)",c:[a.ASM,a.QSM,a.CLCM,a.CBLCLM,e]},{cN:"type",b:":",e:c,r:10}]}]}}(hljs);hljs.LANGUAGES.bash=function(a){var g="true false";var e="if then else elif fi for break continue while in do done echo exit return set declare";var c={cN:"variable",b:"\\$[a-zA-Z0-9_#]+"};var b={cN:"variable",b:"\\${([^}]|\\\\})+}"};var h={cN:"string",b:'"',e:'"',i:"\\n",c:[a.BE,c,b],r:0};var d={cN:"string",b:"'",e:"'",c:[{b:"''"}],r:0};var f={cN:"test_condition",b:"",e:"",c:[h,d,c,b],k:{literal:g},r:0};return{k:{keyword:e,literal:g},c:[{cN:"shebang",b:"(#!\\/bin\\/bash)|(#!\\/bin\\/sh)",r:10},c,b,a.HCM,h,d,a.inherit(f,{b:"\\[ ",e:" \\]",r:0}),a.inherit(f,{b:"\\[\\[ ",e:" \\]\\]"})]}}(hljs);hljs.LANGUAGES.coffeescript=function(c){var b={keyword:"in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger super then unless until loop of by when and or is isnt not",literal:"true false null undefined yes no on off ",reserved:"case default function var void with const let enum export import native __hasProp __extends __slice __bind __indexOf"};var a="[A-Za-z$_][0-9A-Za-z$_]*";var e={cN:"title",b:a};var d={cN:"subst",b:"#\\{",e:"}",k:b,c:[c.BNM,c.CNM]};return{k:b,c:[c.BNM,c.CNM,c.ASM,{cN:"string",b:'"""',e:'"""',c:[c.BE,d]},{cN:"string",b:'"',e:'"',c:[c.BE,d],r:0},{cN:"comment",b:"###",e:"###"},c.HCM,{cN:"regexp",b:"///",e:"///",c:[c.HCM]},{cN:"regexp",b:"//[gim]*"},{cN:"regexp",b:"/\\S(\\\\.|[^\\n])*/[gim]*"},{b:"`",e:"`",eB:true,eE:true,sL:"javascript"},{cN:"function",b:a+"\\s*=\\s*(\\(.+\\))?\\s*[-=]>",rB:true,c:[e,{cN:"params",b:"\\(",e:"\\)"}]},{cN:"class",bWK:true,k:"class",e:"$",i:":",c:[{bWK:true,k:"extends",eW:true,i:":",c:[e]},e]},{cN:"property",b:"@"+a}]}}(hljs);hljs.LANGUAGES.cpp=function(a){var b={keyword:"false int float while private char catch export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const struct for static_cast|10 union namespace unsigned long throw volatile static protected bool template mutable if public friend do return goto auto void enum else break new extern using true class asm case typeid short reinterpret_cast|10 default double register explicit signed typename try this switch continue wchar_t inline delete alignof char16_t char32_t constexpr decltype noexcept nullptr static_assert thread_local restrict _Bool complex",built_in:"std string cin cout cerr clog stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr"};return{k:b,i:"",k:b,r:10,c:["self"]}]}}(hljs);hljs.LANGUAGES.cs=function(a){return{k:"abstract as base bool break byte case catch char checked class const continue decimal default delegate do double else enum event explicit extern false finally fixed float for foreach goto if implicit in int interface internal is lock long namespace new null object operator out override params private protected public readonly ref return sbyte sealed short sizeof stackalloc static string struct switch this throw true try typeof uint ulong unchecked unsafe ushort using virtual volatile void while ascending descending from get group into join let orderby partial select set value var where yield",c:[{cN:"comment",b:"///",e:"$",rB:true,c:[{cN:"xmlDocTag",b:"///|"},{cN:"xmlDocTag",b:""}]},a.CLCM,a.CBLCLM,{cN:"preprocessor",b:"#",e:"$",k:"if else elif endif define undef warning error line region endregion pragma checksum"},{cN:"string",b:'@"',e:'"',c:[{b:'""'}]},a.ASM,a.QSM,a.CNM]}}(hljs);hljs.LANGUAGES.css=function(a){var b={cN:"function",b:a.IR+"\\(",e:"\\)",c:[a.NM,a.ASM,a.QSM]};return{cI:true,i:"[=/|']",c:[a.CBLCLM,{cN:"id",b:"\\#[A-Za-z0-9_-]+"},{cN:"class",b:"\\.[A-Za-z0-9_-]+",r:0},{cN:"attr_selector",b:"\\[",e:"\\]",i:"$"},{cN:"pseudo",b:":(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\\\"\\']+"},{cN:"at_rule",b:"@(font-face|page)",l:"[a-z-]+",k:"font-face page"},{cN:"at_rule",b:"@",e:"[{;]",eE:true,k:"import page media charset",c:[b,a.ASM,a.QSM,a.NM]},{cN:"tag",b:a.IR,r:0},{cN:"rules",b:"{",e:"}",i:"[^\\s]",r:0,c:[a.CBLCLM,{cN:"rule",b:"[^\\s]",rB:true,e:";",eW:true,c:[{cN:"attribute",b:"[A-Z\\_\\.\\-]+",e:":",eE:true,i:"[^\\s]",starts:{cN:"value",eW:true,eE:true,c:[b,a.NM,a.QSM,a.ASM,a.CBLCLM,{cN:"hexcolor",b:"\\#[0-9A-F]+"},{cN:"important",b:"!important"}]}}]}]}]}}(hljs);hljs.LANGUAGES.diff=function(a){return{c:[{cN:"chunk",b:"^\\@\\@ +\\-\\d+,\\d+ +\\+\\d+,\\d+ +\\@\\@$",r:10},{cN:"chunk",b:"^\\*\\*\\* +\\d+,\\d+ +\\*\\*\\*\\*$",r:10},{cN:"chunk",b:"^\\-\\-\\- +\\d+,\\d+ +\\-\\-\\-\\-$",r:10},{cN:"header",b:"Index: ",e:"$"},{cN:"header",b:"=====",e:"=====$"},{cN:"header",b:"^\\-\\-\\-",e:"$"},{cN:"header",b:"^\\*{3} ",e:"$"},{cN:"header",b:"^\\+\\+\\+",e:"$"},{cN:"header",b:"\\*{5}",e:"\\*{5}$"},{cN:"addition",b:"^\\+",e:"$"},{cN:"deletion",b:"^\\-",e:"$"},{cN:"change",b:"^\\!",e:"$"}]}}(hljs);hljs.LANGUAGES.http=function(a){return{i:"\\S",c:[{cN:"status",b:"^HTTP/[0-9\\.]+",e:"$",c:[{cN:"number",b:"\\b\\d{3}\\b"}]},{cN:"request",b:"^[A-Z]+ (.*?) HTTP/[0-9\\.]+$",rB:true,e:"$",c:[{cN:"string",b:" ",e:" ",eB:true,eE:true}]},{cN:"attribute",b:"^\\w",e:": ",eE:true,i:"\\n|\\s|=",starts:{cN:"string",e:"$"}},{b:"\\n\\n",starts:{sL:"",eW:true}}]}}(hljs);hljs.LANGUAGES.ini=function(a){return{cI:true,i:"[^\\s]",c:[{cN:"comment",b:";",e:"$"},{cN:"title",b:"^\\[",e:"\\]"},{cN:"setting",b:"^[a-z0-9\\[\\]_-]+[ \\t]*=[ \\t]*",e:"$",c:[{cN:"value",eW:true,k:"on off true false yes no",c:[a.QSM,a.NM]}]}]}}(hljs);hljs.LANGUAGES.java=function(a){return{k:"false synchronized int abstract float private char boolean static null if const for true while long throw strictfp finally protected import native final return void enum else break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws",c:[{cN:"javadoc",b:"/\\*\\*",e:"\\*/",c:[{cN:"javadoctag",b:"@[A-Za-z]+"}],r:10},a.CLCM,a.CBLCLM,a.ASM,a.QSM,{cN:"class",bWK:true,e:"{",k:"class interface",i:":",c:[{bWK:true,k:"extends implements",r:10},{cN:"title",b:a.UIR}]},a.CNM,{cN:"annotation",b:"@[A-Za-z]+"}]}}(hljs);hljs.LANGUAGES.javascript=function(a){return{k:{keyword:"in if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const",literal:"true false null undefined NaN Infinity"},c:[a.ASM,a.QSM,a.CLCM,a.CBLCLM,a.CNM,{b:"("+a.RSR+"|\\b(case|return|throw)\\b)\\s*",k:"return throw case",c:[a.CLCM,a.CBLCLM,{cN:"regexp",b:"/",e:"/[gim]*",i:"\\n",c:[{b:"\\\\/"}]},{b:"<",e:">;",sL:"xml"}],r:0},{cN:"function",bWK:true,e:"{",k:"function",c:[{cN:"title",b:"[A-Za-z$_][0-9A-Za-z$_]*"},{cN:"params",b:"\\(",e:"\\)",c:[a.CLCM,a.CBLCLM],i:"[\"'\\(]"}],i:"\\[|%"}]}}(hljs);hljs.LANGUAGES.json=function(a){var e={literal:"true false null"};var d=[a.QSM,a.CNM];var c={cN:"value",e:",",eW:true,eE:true,c:d,k:e};var b={b:"{",e:"}",c:[{cN:"attribute",b:'\\s*"',e:'"\\s*:\\s*',eB:true,eE:true,c:[a.BE],i:"\\n",starts:c}],i:"\\S"};var f={b:"\\[",e:"\\]",c:[a.inherit(c,{cN:null})],i:"\\S"};d.splice(d.length,0,b,f);return{c:d,k:e,i:"\\S"}}(hljs);hljs.LANGUAGES.kotlin=function(a){var b={cN:"string",b:'u?r?"""',e:'"""',r:10};return{defaultMode:{k:"package import as type class trait by where object this val var fun get set namespace if else try catch finally for while do super is throw return continue break when in abstract final enum open attribute override private protected public internal out lazy ref",c:[{cN:"javadoc",b:"/\\*\\*",e:"\\*/",c:[{cN:"javadoctag",b:"@[A-Za-z]+"}],r:10},a.CLCM,a.CBLCLM,a.ASM,a.QSM,b,{cN:"class",b:"((annotation )?class |trait )",e:"({|$)",k:"class trait",c:[{cN:"title",b:a.UIR},{cN:"params",b:"\\(",e:"\\)",c:[a.ASM,a.QSM,b]}]},a.CNM]}}}(hljs);hljs.LANGUAGES.xml=function(a){var c="[A-Za-z0-9\\._:-]+";var b={eW:true,c:[{cN:"attribute",b:c,r:0},{b:'="',rB:true,e:'"',c:[{cN:"value",b:'"',eW:true}]},{b:"='",rB:true,e:"'",c:[{cN:"value",b:"'",eW:true}]},{b:"=",c:[{cN:"value",b:"[^\\s/>]+"}]}]};return{cI:true,c:[{cN:"pi",b:"<\\?",e:"\\?>",r:10},{cN:"doctype",b:"",r:10,c:[{b:"\\[",e:"\\]"}]},{cN:"comment",b:"",r:10},{cN:"cdata",b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"tag",b:"|$)",e:">",k:{title:"style"},c:[b],starts:{e:"",rE:true,sL:"css"}},{cN:"tag",b:"|$)",e:">",k:{title:"script"},c:[b],starts:{e:"<\/script>",rE:true,sL:"javascript"}},{b:"<%",e:"%>",sL:"vbscript"},{cN:"tag",b:"",c:[{cN:"title",b:"[^ />]+"},b]}]}}(hljs);hljs.LANGUAGES.markdown=function(a){return{c:[{cN:"header",b:"^#{1,3}",e:"$"},{cN:"header",b:"^.+?\\n[=-]{2,}$"},{b:"<",e:">",sL:"xml",r:0},{cN:"bullet",b:"^([*+-]|(\\d+\\.))\\s+"},{cN:"strong",b:"[*_]{2}.+?[*_]{2}"},{cN:"emphasis",b:"\\*.+?\\*"},{cN:"emphasis",b:"_.+?_",r:0},{cN:"blockquote",b:"^>\\s+",e:"$"},{cN:"code",b:"`.+?`"},{cN:"code",b:"^ ",e:"$",r:0},{cN:"horizontal_rule",b:"^-{3,}",e:"$"},{b:"\\[.+?\\]\\(.+?\\)",rB:true,c:[{cN:"link_label",b:"\\[.+\\]"},{cN:"link_url",b:"\\(",e:"\\)",eB:true,eE:true}]}]}}(hljs);hljs.LANGUAGES.objectivec=function(a){var b={keyword:"int float while private char catch export sizeof typedef const struct for union unsigned long volatile static protected bool mutable if public do return goto void enum else break extern class asm case short default double throw register explicit signed typename try this switch continue wchar_t inline readonly assign property protocol self synchronized end synthesize id optional required implementation nonatomic interface super unichar finally dynamic IBOutlet IBAction selector strong weak readonly",literal:"false true FALSE TRUE nil YES NO NULL",built_in:"NSString NSDictionary CGRect CGPoint UIButton UILabel UITextView UIWebView MKMapView UISegmentedControl NSObject UITableViewDelegate UITableViewDataSource NSThread UIActivityIndicator UITabbar UIToolBar UIBarButtonItem UIImageView NSAutoreleasePool UITableView BOOL NSInteger CGFloat NSException NSLog NSMutableString NSMutableArray NSMutableDictionary NSURL NSIndexPath CGSize UITableViewCell UIView UIViewController UINavigationBar UINavigationController UITabBarController UIPopoverController UIPopoverControllerDelegate UIImage NSNumber UISearchBar NSFetchedResultsController NSFetchedResultsChangeType UIScrollView UIScrollViewDelegate UIEdgeInsets UIColor UIFont UIApplication NSNotFound NSNotificationCenter NSNotification UILocalNotification NSBundle NSFileManager NSTimeInterval NSDate NSCalendar NSUserDefaults UIWindow NSRange NSArray NSError NSURLRequest NSURLConnection class UIInterfaceOrientation MPMoviePlayerController dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once"};return{k:b,i:""}]},{cN:"preprocessor",b:"#",e:"$"},{cN:"class",bWK:true,e:"({|$)",k:"interface class protocol implementation",c:[{cN:"id",b:a.UIR}]},{cN:"variable",b:"\\."+a.UIR}]}}(hljs);hljs.LANGUAGES.perl=function(e){var a="getpwent getservent quotemeta msgrcv scalar kill dbmclose undef lc ma syswrite tr send umask sysopen shmwrite vec qx utime local oct semctl localtime readpipe do return format read sprintf dbmopen pop getpgrp not getpwnam rewinddir qqfileno qw endprotoent wait sethostent bless s|0 opendir continue each sleep endgrent shutdown dump chomp connect getsockname die socketpair close flock exists index shmgetsub for endpwent redo lstat msgctl setpgrp abs exit select print ref gethostbyaddr unshift fcntl syscall goto getnetbyaddr join gmtime symlink semget splice x|0 getpeername recv log setsockopt cos last reverse gethostbyname getgrnam study formline endhostent times chop length gethostent getnetent pack getprotoent getservbyname rand mkdir pos chmod y|0 substr endnetent printf next open msgsnd readdir use unlink getsockopt getpriority rindex wantarray hex system getservbyport endservent int chr untie rmdir prototype tell listen fork shmread ucfirst setprotoent else sysseek link getgrgid shmctl waitpid unpack getnetbyname reset chdir grep split require caller lcfirst until warn while values shift telldir getpwuid my getprotobynumber delete and sort uc defined srand accept package seekdir getprotobyname semop our rename seek if q|0 chroot sysread setpwent no crypt getc chown sqrt write setnetent setpriority foreach tie sin msgget map stat getlogin unless elsif truncate exec keys glob tied closedirioctl socket readlink eval xor readline binmode setservent eof ord bind alarm pipe atan2 getgrent exp time push setgrent gt lt or ne m|0 break given say state when";var d={cN:"subst",b:"[$@]\\{",e:"\\}",k:a,r:10};var b={cN:"variable",b:"\\$\\d"};var i={cN:"variable",b:"[\\$\\%\\@\\*](\\^\\w\\b|#\\w+(\\:\\:\\w+)*|[^\\s\\w{]|{\\w+}|\\w+(\\:\\:\\w*)*)"};var f=[e.BE,d,b,i];var h={b:"->",c:[{b:e.IR},{b:"{",e:"}"}]};var g={cN:"comment",b:"^(__END__|__DATA__)",e:"\\n$",r:5};var c=[b,i,e.HCM,g,{cN:"comment",b:"^\\=\\w",e:"\\=cut",eW:true},h,{cN:"string",b:"q[qwxr]?\\s*\\(",e:"\\)",c:f,r:5},{cN:"string",b:"q[qwxr]?\\s*\\[",e:"\\]",c:f,r:5},{cN:"string",b:"q[qwxr]?\\s*\\{",e:"\\}",c:f,r:5},{cN:"string",b:"q[qwxr]?\\s*\\|",e:"\\|",c:f,r:5},{cN:"string",b:"q[qwxr]?\\s*\\<",e:"\\>",c:f,r:5},{cN:"string",b:"qw\\s+q",e:"q",c:f,r:5},{cN:"string",b:"'",e:"'",c:[e.BE],r:0},{cN:"string",b:'"',e:'"',c:f,r:0},{cN:"string",b:"`",e:"`",c:[e.BE]},{cN:"string",b:"{\\w+}",r:0},{cN:"string",b:"-?\\w+\\s*\\=\\>",r:0},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{b:"("+e.RSR+"|\\b(split|return|print|reverse|grep)\\b)\\s*",k:"split return print reverse grep",r:0,c:[e.HCM,g,{cN:"regexp",b:"(s|tr|y)/(\\\\.|[^/])*/(\\\\.|[^/])*/[a-z]*",r:10},{cN:"regexp",b:"(m|qr)?/",e:"/[a-z]*",c:[e.BE],r:0}]},{cN:"sub",bWK:true,e:"(\\s*\\(.*?\\))?[;{]",k:"sub",r:5},{cN:"operator",b:"-\\w\\b",r:0}];d.c=c;h.c[1].c=c;return{k:a,c:c}}(hljs);hljs.LANGUAGES.php=function(a){var e={cN:"variable",b:"\\$+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*"};var b=[a.inherit(a.ASM,{i:null}),a.inherit(a.QSM,{i:null}),{cN:"string",b:'b"',e:'"',c:[a.BE]},{cN:"string",b:"b'",e:"'",c:[a.BE]}];var c=[a.BNM,a.CNM];var d={cN:"title",b:a.UIR};return{cI:true,k:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return implements parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception php_user_filter default die require __FUNCTION__ enddeclare final try this switch continue endfor endif declare unset true false namespace trait goto instanceof insteadof __DIR__ __NAMESPACE__ __halt_compiler",c:[a.CLCM,a.HCM,{cN:"comment",b:"/\\*",e:"\\*/",c:[{cN:"phpdoc",b:"\\s@[A-Za-z]+"}]},{cN:"comment",eB:true,b:"__halt_compiler.+?;",eW:true},{cN:"string",b:"<<<['\"]?\\w+['\"]?$",e:"^\\w+;",c:[a.BE]},{cN:"preprocessor",b:"<\\?php",r:10},{cN:"preprocessor",b:"\\?>"},e,{cN:"function",bWK:true,e:"{",k:"function",i:"\\$|\\[|%",c:[d,{cN:"params",b:"\\(",e:"\\)",c:["self",e,a.CBLCLM].concat(b).concat(c)}]},{cN:"class",bWK:true,e:"{",k:"class",i:"[:\\(\\$]",c:[{bWK:true,eW:true,k:"extends",c:[d]},d]},{b:"=>"}].concat(b).concat(c)}}(hljs);hljs.LANGUAGES.python=function(a){var f={cN:"prompt",b:"^(>>>|\\.\\.\\.) "};var c=[{cN:"string",b:"(u|b)?r?'''",e:"'''",c:[f],r:10},{cN:"string",b:'(u|b)?r?"""',e:'"""',c:[f],r:10},{cN:"string",b:"(u|r|ur)'",e:"'",c:[a.BE],r:10},{cN:"string",b:'(u|r|ur)"',e:'"',c:[a.BE],r:10},{cN:"string",b:"(b|br)'",e:"'",c:[a.BE]},{cN:"string",b:'(b|br)"',e:'"',c:[a.BE]}].concat([a.ASM,a.QSM]);var e={cN:"title",b:a.UIR};var d={cN:"params",b:"\\(",e:"\\)",c:["self",a.CNM,f].concat(c)};var b={bWK:true,e:":",i:"[${=;\\n]",c:[e,d],r:10};return{k:{keyword:"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda nonlocal|10",built_in:"None True False Ellipsis NotImplemented"},i:"(|\\?)",c:c.concat([f,a.HCM,a.inherit(b,{cN:"function",k:"def"}),a.inherit(b,{cN:"class",k:"class"}),a.CNM,{cN:"decorator",b:"@",e:"$"},{b:"\\b(print|exec)\\("}])}}(hljs);hljs.LANGUAGES.ruby=function(e){var a="[a-zA-Z_][a-zA-Z0-9_]*(\\!|\\?)?";var j="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?";var g={keyword:"and false then defined module in return redo if BEGIN retry end for true self when next until do begin unless END rescue nil else break undef not super class case require yield alias while ensure elsif or include"};var c={cN:"yardoctag",b:"@[A-Za-z]+"};var k=[{cN:"comment",b:"#",e:"$",c:[c]},{cN:"comment",b:"^\\=begin",e:"^\\=end",c:[c],r:10},{cN:"comment",b:"^__END__",e:"\\n$"}];var d={cN:"subst",b:"#\\{",e:"}",l:a,k:g};var i=[e.BE,d];var b=[{cN:"string",b:"'",e:"'",c:i,r:0},{cN:"string",b:'"',e:'"',c:i,r:0},{cN:"string",b:"%[qw]?\\(",e:"\\)",c:i},{cN:"string",b:"%[qw]?\\[",e:"\\]",c:i},{cN:"string",b:"%[qw]?{",e:"}",c:i},{cN:"string",b:"%[qw]?<",e:">",c:i,r:10},{cN:"string",b:"%[qw]?/",e:"/",c:i,r:10},{cN:"string",b:"%[qw]?%",e:"%",c:i,r:10},{cN:"string",b:"%[qw]?-",e:"-",c:i,r:10},{cN:"string",b:"%[qw]?\\|",e:"\\|",c:i,r:10}];var h={cN:"function",bWK:true,e:" |$|;",k:"def",c:[{cN:"title",b:j,l:a,k:g},{cN:"params",b:"\\(",e:"\\)",l:a,k:g}].concat(k)};var f=k.concat(b.concat([{cN:"class",bWK:true,e:"$|;",k:"class module",c:[{cN:"title",b:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?",r:0},{cN:"inheritance",b:"<\\s*",c:[{cN:"parent",b:"("+e.IR+"::)?"+e.IR}]}].concat(k)},h,{cN:"constant",b:"(::)?(\\b[A-Z]\\w*(::)?)+",r:0},{cN:"symbol",b:":",c:b.concat([{b:j}]),r:0},{cN:"symbol",b:a+":",r:0},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{cN:"number",b:"\\?\\w"},{cN:"variable",b:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{b:"("+e.RSR+")\\s*",c:k.concat([{cN:"regexp",b:"/",e:"/[a-z]*",i:"\\n",c:[e.BE,d]}]),r:0}]));d.c=f;h.c[1].c=f;return{l:a,k:g,c:f}}(hljs);hljs.LANGUAGES.scss=function(a){var b="[a-zA-Z-][a-zA-Z0-9_-]*";var c={cN:"function",b:b+"\\(",e:"\\)",c:["self",a.NM,a.ASM,a.QSM]};var d={cN:"attribute",b:"[A-Z\\_\\.\\-]+",e:":",eE:true,i:"[^\\s]",starts:{cN:"value",eW:true,eE:true,c:[c,a.NM,a.QSM,a.ASM,a.CBLCLM,{cN:"hexcolor",b:"\\#[0-9A-F]+"},{cN:"important",b:"!important"}]}};return{cI:true,i:"[=/|']",c:[a.CLCM,a.CBLCLM,{cN:"function",b:b+"\\(",e:"\\)",c:["self",a.NM,a.ASM,a.QSM]},{cN:"id",b:"\\#[A-Za-z0-9_-]+",r:0},{cN:"class",b:"\\.[A-Za-z0-9_-]+",r:0},{cN:"attr_selector",b:"\\[",e:"\\]",i:"$"},{cN:"tag",b:"\\b(a|abbr|acronym|address|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|div|dl|dt|em|embed|fieldset|figcaption|figure|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|map|mark|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|samp|script|section|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video)\\b",r:0},{cN:"pseudo",b:":(visited|valid|root|right|required|read-write|read-only|out-range|optional|only-of-type|only-child|nth-of-type|nth-last-of-type|nth-last-child|nth-child|not|link|left|last-of-type|last-child|lang|invalid|indeterminate|in-range|hover|focus|first-of-type|first-line|first-letter|first-child|first|enabled|empty|disabled|default|checked|before|after|active)"},{cN:"pseudo",b:"::(after|before|choices|first-letter|first-line|repeat-index|repeat-item|selection|value)"},{cN:"attribute",b:"\\b(z-index|word-wrap|word-spacing|word-break|width|widows|white-space|visibility|vertical-align|unicode-bidi|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform|top|text-underline-position|text-transform|text-shadow|text-rendering|text-overflow|text-indent|text-decoration-style|text-decoration-line|text-decoration-color|text-decoration|text-align-last|text-align|tab-size|table-layout|right|resize|quotes|position|pointer-events|perspective-origin|perspective|page-break-inside|page-break-before|page-break-after|padding-top|padding-right|padding-left|padding-bottom|padding|overflow-y|overflow-x|overflow-wrap|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|order|opacity|object-position|object-fit|normal|none|nav-up|nav-right|nav-left|nav-index|nav-down|min-width|min-height|max-width|max-height|mask|marks|margin-top|margin-right|margin-left|margin-bottom|margin|list-style-type|list-style-position|list-style-image|list-style|line-height|letter-spacing|left|justify-content|initial|inherit|ime-mode|image-orientation|image-resolution|image-rendering|icon|hyphens|height|font-weight|font-variant-ligatures|font-variant|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|float|flex-wrap|flex-shrink|flex-grow|flex-flow|flex-direction|flex-basis|flex|filter|empty-cells|display|direction|cursor|counter-reset|counter-increment|content|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|columns|color|clip-path|clip|clear|caption-side|break-inside|break-before|break-after|box-sizing|box-shadow|box-decoration-break|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-left-width|border-left-style|border-left-color|border-left|border-image-width|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-attachment|background|backface-visibility|auto|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|align-self|align-items|align-content)\\b",i:"[^\\s]"},{cN:"value",b:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{cN:"value",b:":",e:";",c:[a.NM,a.QSM,a.ASM,{cN:"hexcolor",b:"\\#[0-9A-F]+"},{cN:"important",b:"!important"}]},{cN:"at_rule",b:"@",e:"[{;]",k:"mixin include for extend charset import media page font-face namespace",c:[c,a.QSM,a.ASM,a.NM,{cN:"preprocessor",b:"\\s[A-Za-z0-9_.-]+"}]}]}}(hljs);hljs.LANGUAGES.sql=function(a){return{cI:true,c:[{cN:"operator",b:"(begin|start|commit|rollback|savepoint|lock|alter|create|drop|rename|call|delete|do|handler|insert|load|replace|select|truncate|update|set|show|pragma|grant)\\b(?!:)",e:";",eW:true,k:{keyword:"all partial global month current_timestamp using go revoke smallint indicator end-exec disconnect zone with character assertion to add current_user usage input local alter match collate real then rollback get read timestamp session_user not integer bit unique day minute desc insert execute like ilike|2 level decimal drop continue isolation found where constraints domain right national some module transaction relative second connect escape close system_user for deferred section cast current sqlstate allocate intersect deallocate numeric public preserve full goto initially asc no key output collation group by union session both last language constraint column of space foreign deferrable prior connection unknown action commit view or first into float year primary cascaded except restrict set references names table outer open select size are rows from prepare distinct leading create only next inner authorization schema corresponding option declare precision immediate else timezone_minute external varying translation true case exception join hour default double scroll value cursor descriptor values dec fetch procedure delete and false int is describe char as at in varchar null trailing any absolute current_time end grant privileges when cross check write current_date pad begin temporary exec time update catalog user sql date on identity timezone_hour natural whenever interval work order cascade diagnostics nchar having left call do handler load replace truncate start lock show pragma exists number",aggregate:"count sum min max avg"},c:[{cN:"string",b:"'",e:"'",c:[a.BE,{b:"''"}],r:0},{cN:"string",b:'"',e:'"',c:[a.BE,{b:'""'}],r:0},{cN:"string",b:"`",e:"`",c:[a.BE]},a.CNM]},a.CBLCLM,{cN:"comment",b:"--",e:"$"}]}}(hljs); \ No newline at end of file diff --git a/docs/reports/js/highlightjs-line-numbers.min.js b/docs/reports/js/highlightjs-line-numbers.min.js new file mode 100644 index 00000000..85485767 --- /dev/null +++ b/docs/reports/js/highlightjs-line-numbers.min.js @@ -0,0 +1,24 @@ +/* +The MIT License (MIT) + +Copyright (c) 2017 Yauheni Pakala + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + */ +!function(r,o){"use strict";var e,i="hljs-ln",l="hljs-ln-line",h="hljs-ln-code",s="hljs-ln-numbers",c="hljs-ln-n",m="data-line-number",a=/\r\n|\r|\n/g;function u(e){for(var n=e.toString(),t=e.anchorNode;"TD"!==t.nodeName;)t=t.parentNode;for(var r=e.focusNode;"TD"!==r.nodeName;)r=r.parentNode;var o=parseInt(t.dataset.lineNumber),a=parseInt(r.dataset.lineNumber);if(o==a)return n;var i,l=t.textContent,s=r.textContent;for(a
{6}',[l,s,c,m,h,o+n.startFrom,0{1}',[i,r])}return e}(e.innerHTML,o)}function v(e){var n=e.className;if(/hljs-/.test(n)){for(var t=g(e.innerHTML),r=0,o="";r{1}\n',[n,0 - Coverage Report > com.stslex93.notes + + app Coverage Report > com.stslex.aproselection.core.core - + +
+com.stslex.aproselection.core.core
-

Coverage Summary for Package: com.stslex93.notes

+

Coverage Summary for Package: com.stslex.aproselection.core.core

@@ -44,13 +46,21 @@

Coverage Summary for Package: com.stslex93.notes

- + + - @@ -111,7 +120,7 @@

Coverage Summary for Package: com.stslex93.notes

- + - - - - - - - @@ -197,18 +177,15 @@

Coverage Summary for Package: com.stslex93.notes

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-1/index_SORT_BY_BLOCK.html b/docs/reports/ns-1/index_SORT_BY_BLOCK.html index 9db14f07..ca277189 100644 --- a/docs/reports/ns-1/index_SORT_BY_BLOCK.html +++ b/docs/reports/ns-1/index_SORT_BY_BLOCK.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes + + app Coverage Report > com.stslex.aproselection.core.core - + +
+com.stslex.aproselection.core.core
-

Coverage Summary for Package: com.stslex93.notes

+

Coverage Summary for Package: com.stslex.aproselection.core.core

Package
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) @@ -58,16 +68,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/6) + (0/8)
0% - (0/13) + (0/10) @@ -75,7 +84,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/53) + (0/38)
BuildConfigLogger 0% @@ -125,35 +134,7 @@

Coverage Summary for Package: com.stslex93.notes

0%
- (0/2) - -
- - - 0% - - - (0/2) - - - - 0% - - - (0/5) - -
NoteApplication - - 0% - - - (0/2) + (0/4) @@ -161,16 +142,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/4) + (0/8)
0% - (0/11) + (0/10) @@ -178,7 +158,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/48) + (0/38)
@@ -44,13 +46,21 @@

Coverage Summary for Package: com.stslex93.notes

- + + - @@ -111,7 +120,7 @@

Coverage Summary for Package: com.stslex93.notes

- + - - - - - - - @@ -197,18 +177,15 @@

Coverage Summary for Package: com.stslex93.notes

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-1/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-1/index_SORT_BY_BLOCK_DESC.html index 1958d15c..a9509cab 100644 --- a/docs/reports/ns-1/index_SORT_BY_BLOCK_DESC.html +++ b/docs/reports/ns-1/index_SORT_BY_BLOCK_DESC.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes + + app Coverage Report > com.stslex.aproselection.core.core - + +
+com.stslex.aproselection.core.core
-

Coverage Summary for Package: com.stslex93.notes

+

Coverage Summary for Package: com.stslex.aproselection.core.core

Package
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) @@ -58,16 +68,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/6) + (0/8)
0% - (0/13) + (0/10) @@ -75,7 +84,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/53) + (0/38)
BuildConfigLogger 0% @@ -125,35 +134,7 @@

Coverage Summary for Package: com.stslex93.notes

0%
- (0/2) - -
- - - 0% - - - (0/2) - - - - 0% - - - (0/5) - -
NoteApplication - - 0% - - - (0/2) + (0/4) @@ -161,16 +142,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/4) + (0/8)
0% - (0/11) + (0/10) @@ -178,7 +158,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/48) + (0/38)
@@ -44,13 +46,21 @@

Coverage Summary for Package: com.stslex93.notes

- + + - @@ -111,13 +120,13 @@

Coverage Summary for Package: com.stslex93.notes

- + - - - - - - - @@ -197,18 +177,15 @@

Coverage Summary for Package: com.stslex93.notes

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-1/index_SORT_BY_CLASS.html b/docs/reports/ns-1/index_SORT_BY_CLASS.html index ec2a711e..8143d111 100644 --- a/docs/reports/ns-1/index_SORT_BY_CLASS.html +++ b/docs/reports/ns-1/index_SORT_BY_CLASS.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes + + app Coverage Report > com.stslex.aproselection.core.core - + +
+com.stslex.aproselection.core.core
-

Coverage Summary for Package: com.stslex93.notes

+

Coverage Summary for Package: com.stslex.aproselection.core.core

Package
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) @@ -58,16 +68,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/6) + (0/8)
0% - (0/13) + (0/10) @@ -75,7 +84,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/53) + (0/38)
NoteApplicationLogger 0% - (0/2) + (0/1) @@ -128,13 +137,12 @@

Coverage Summary for Package: com.stslex93.notes

(0/4)
0% - (0/11) + (0/8) @@ -142,43 +150,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/48) + (0/10)
BuildConfig 0% - (0/1) - - - - 0% - - - (0/2) - - - - - 0% - - - (0/2) - - - - 0% - - - (0/5) + (0/38)
@@ -44,13 +46,21 @@

Coverage Summary for Package: com.stslex93.notes

- + + - @@ -111,7 +120,7 @@

Coverage Summary for Package: com.stslex93.notes

- + - - - - - - - @@ -197,18 +177,15 @@

Coverage Summary for Package: com.stslex93.notes

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-1/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-1/index_SORT_BY_CLASS_DESC.html index 27466fbc..5265539d 100644 --- a/docs/reports/ns-1/index_SORT_BY_CLASS_DESC.html +++ b/docs/reports/ns-1/index_SORT_BY_CLASS_DESC.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes + + app Coverage Report > com.stslex.aproselection.core.core - + +
+com.stslex.aproselection.core.core
-

Coverage Summary for Package: com.stslex93.notes

+

Coverage Summary for Package: com.stslex.aproselection.core.core

Package
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) @@ -58,16 +68,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/6) + (0/8)
0% - (0/13) + (0/10) @@ -75,7 +84,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/53) + (0/38)
BuildConfigLogger 0% @@ -125,35 +134,7 @@

Coverage Summary for Package: com.stslex93.notes

0%
- (0/2) - -
- - - 0% - - - (0/2) - - - - 0% - - - (0/5) - -
NoteApplication - - 0% - - - (0/2) + (0/4) @@ -161,16 +142,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/4) + (0/8)
0% - (0/11) + (0/10) @@ -178,7 +158,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/48) + (0/38)
@@ -44,13 +46,21 @@

Coverage Summary for Package: com.stslex93.notes

- + + - @@ -111,13 +120,13 @@

Coverage Summary for Package: com.stslex93.notes

- + - - - - - - - @@ -197,18 +177,15 @@

Coverage Summary for Package: com.stslex93.notes

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-1/index_SORT_BY_LINE.html b/docs/reports/ns-1/index_SORT_BY_LINE.html index bebc814c..4ba73c7a 100644 --- a/docs/reports/ns-1/index_SORT_BY_LINE.html +++ b/docs/reports/ns-1/index_SORT_BY_LINE.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes + + app Coverage Report > com.stslex.aproselection.core.core - + +
+com.stslex.aproselection.core.core
-

Coverage Summary for Package: com.stslex93.notes

+

Coverage Summary for Package: com.stslex.aproselection.core.core

Package
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) @@ -58,16 +68,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/6) + (0/8)
0% - (0/13) + (0/10) @@ -75,7 +84,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/53) + (0/38)
NoteApplicationLogger 0% - (0/2) + (0/1) @@ -128,13 +137,12 @@

Coverage Summary for Package: com.stslex93.notes

(0/4)
0% - (0/11) + (0/8) @@ -142,43 +150,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/48) + (0/10)
BuildConfig 0% - (0/1) - - - - 0% - - - (0/2) - - - - - 0% - - - (0/2) - - - - 0% - - - (0/5) + (0/38)
@@ -44,13 +46,21 @@

Coverage Summary for Package: com.stslex93.notes

- + + - @@ -111,7 +120,7 @@

Coverage Summary for Package: com.stslex93.notes

- + - - - - - - - @@ -197,18 +177,15 @@

Coverage Summary for Package: com.stslex93.notes

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-1/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-1/index_SORT_BY_LINE_DESC.html index 2ee59d24..42aac7ef 100644 --- a/docs/reports/ns-1/index_SORT_BY_LINE_DESC.html +++ b/docs/reports/ns-1/index_SORT_BY_LINE_DESC.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes + + app Coverage Report > com.stslex.aproselection.core.core - + +
+com.stslex.aproselection.core.core
-

Coverage Summary for Package: com.stslex93.notes

+

Coverage Summary for Package: com.stslex.aproselection.core.core

Package
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) @@ -58,16 +68,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/6) + (0/8)
0% - (0/13) + (0/10) @@ -75,7 +84,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/53) + (0/38)
BuildConfigLogger 0% @@ -125,35 +134,7 @@

Coverage Summary for Package: com.stslex93.notes

0%
- (0/2) - -
- - - 0% - - - (0/2) - - - - 0% - - - (0/5) - -
NoteApplication - - 0% - - - (0/2) + (0/4) @@ -161,16 +142,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/4) + (0/8)
0% - (0/11) + (0/10) @@ -178,7 +158,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/48) + (0/38)
@@ -44,13 +46,21 @@

Coverage Summary for Package: com.stslex93.notes

- + + - @@ -111,13 +120,13 @@

Coverage Summary for Package: com.stslex93.notes

- + - - - - - - - @@ -197,18 +177,15 @@

Coverage Summary for Package: com.stslex93.notes

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-1/index_SORT_BY_METHOD.html b/docs/reports/ns-1/index_SORT_BY_METHOD.html index 45d732df..2b5466b9 100644 --- a/docs/reports/ns-1/index_SORT_BY_METHOD.html +++ b/docs/reports/ns-1/index_SORT_BY_METHOD.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes + + app Coverage Report > com.stslex.aproselection.core.core - + +
+com.stslex.aproselection.core.core
-

Coverage Summary for Package: com.stslex93.notes

+

Coverage Summary for Package: com.stslex.aproselection.core.core

Package
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) @@ -58,16 +68,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/6) + (0/8)
0% - (0/13) + (0/10) @@ -75,7 +84,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/53) + (0/38)
NoteApplicationLogger 0% - (0/2) + (0/1) @@ -128,13 +137,12 @@

Coverage Summary for Package: com.stslex93.notes

(0/4)
0% - (0/11) + (0/8) @@ -142,43 +150,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/48) + (0/10)
BuildConfig 0% - (0/1) - - - - 0% - - - (0/2) - - - - - 0% - - - (0/2) - - - - 0% - - - (0/5) + (0/38)
@@ -44,13 +46,21 @@

Coverage Summary for Package: com.stslex93.notes

- + + - @@ -111,7 +120,7 @@

Coverage Summary for Package: com.stslex93.notes

- + - - - - - - - @@ -197,18 +177,15 @@

Coverage Summary for Package: com.stslex93.notes

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-1/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-1/index_SORT_BY_METHOD_DESC.html index 8b03f224..ac2ae38c 100644 --- a/docs/reports/ns-1/index_SORT_BY_METHOD_DESC.html +++ b/docs/reports/ns-1/index_SORT_BY_METHOD_DESC.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes + + app Coverage Report > com.stslex.aproselection.core.core - + +
+com.stslex.aproselection.core.core
-

Coverage Summary for Package: com.stslex93.notes

+

Coverage Summary for Package: com.stslex.aproselection.core.core

Package
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) @@ -58,16 +68,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/6) + (0/8)
0% - (0/13) + (0/10) @@ -75,7 +84,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/53) + (0/38)
BuildConfigLogger 0% @@ -125,35 +134,7 @@

Coverage Summary for Package: com.stslex93.notes

0%
- (0/2) - -
- - - 0% - - - (0/2) - - - - 0% - - - (0/5) - -
NoteApplication - - 0% - - - (0/2) + (0/4) @@ -161,16 +142,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/4) + (0/8)
0% - (0/11) + (0/10) @@ -178,7 +158,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/48) + (0/38)
@@ -44,13 +46,21 @@

Coverage Summary for Package: com.stslex93.notes

- + + - @@ -111,13 +120,13 @@

Coverage Summary for Package: com.stslex93.notes

- + - - - - - - - @@ -197,18 +177,15 @@

Coverage Summary for Package: com.stslex93.notes

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-1/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-1/index_SORT_BY_NAME_DESC.html index 7c61396a..76219491 100644 --- a/docs/reports/ns-1/index_SORT_BY_NAME_DESC.html +++ b/docs/reports/ns-1/index_SORT_BY_NAME_DESC.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes + + app Coverage Report > com.stslex.aproselection.core.core - + +
+com.stslex.aproselection.core.core
-

Coverage Summary for Package: com.stslex93.notes

+

Coverage Summary for Package: com.stslex.aproselection.core.core

Package
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) @@ -58,16 +68,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/6) + (0/8)
0% - (0/13) + (0/10) @@ -75,7 +84,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/53) + (0/38)
NoteApplicationLogger 0% - (0/2) + (0/1) @@ -128,13 +137,12 @@

Coverage Summary for Package: com.stslex93.notes

(0/4)
0% - (0/11) + (0/8) @@ -142,43 +150,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/48) + (0/10)
BuildConfig 0% - (0/1) - - - - 0% - - - (0/2) - - - - - 0% - - - (0/2) - - - - 0% - - - (0/5) + (0/38)
@@ -44,13 +46,21 @@

Coverage Summary for Package: com.stslex93.notes

- + + - @@ -111,13 +120,13 @@

Coverage Summary for Package: com.stslex93.notes

- + - - - - - - - @@ -197,18 +177,15 @@

Coverage Summary for Package: com.stslex93.notes

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-1/index_SORT_BY_STATEMENT.html b/docs/reports/ns-1/index_SORT_BY_STATEMENT.html index 36254aca..a457830a 100644 --- a/docs/reports/ns-1/index_SORT_BY_STATEMENT.html +++ b/docs/reports/ns-1/index_SORT_BY_STATEMENT.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes + + app Coverage Report > com.stslex.aproselection.core.core - + +
+com.stslex.aproselection.core.core
-

Coverage Summary for Package: com.stslex93.notes

+

Coverage Summary for Package: com.stslex.aproselection.core.core

Package
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) @@ -58,16 +68,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/6) + (0/8)
0% - (0/13) + (0/10) @@ -75,7 +84,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/53) + (0/38)
NoteApplicationLogger 0% - (0/2) + (0/1) @@ -128,13 +137,12 @@

Coverage Summary for Package: com.stslex93.notes

(0/4)
0% - (0/11) + (0/8) @@ -142,43 +150,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/48) + (0/10)
BuildConfig 0% - (0/1) - - - - 0% - - - (0/2) - - - - - 0% - - - (0/2) - - - - 0% - - - (0/5) + (0/38)
@@ -44,13 +46,21 @@

Coverage Summary for Package: com.stslex93.notes

- + + - @@ -111,7 +120,7 @@

Coverage Summary for Package: com.stslex93.notes

- + - - - - - - - @@ -197,18 +177,15 @@

Coverage Summary for Package: com.stslex93.notes

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-1/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-1/index_SORT_BY_STATEMENT_DESC.html index 99f6d92d..bd5c729d 100644 --- a/docs/reports/ns-1/index_SORT_BY_STATEMENT_DESC.html +++ b/docs/reports/ns-1/index_SORT_BY_STATEMENT_DESC.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes + + app Coverage Report > com.stslex.aproselection.core.core - + +
+com.stslex.aproselection.core.core
-

Coverage Summary for Package: com.stslex93.notes

+

Coverage Summary for Package: com.stslex.aproselection.core.core

Package
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) @@ -58,16 +68,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/6) + (0/8)
0% - (0/13) + (0/10) @@ -75,7 +84,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/53) + (0/38)
BuildConfigLogger 0% @@ -125,35 +134,7 @@

Coverage Summary for Package: com.stslex93.notes

0%
- (0/2) - -
- - - 0% - - - (0/2) - - - - 0% - - - (0/5) - -
NoteApplication - - 0% - - - (0/2) + (0/4) @@ -161,16 +142,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/4) + (0/8)
0% - (0/11) + (0/10) @@ -178,7 +158,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/48) + (0/38)
@@ -44,13 +46,21 @@

Coverage Summary for Package: com.stslex93.notes

- + + - @@ -111,13 +120,13 @@

Coverage Summary for Package: com.stslex93.notes

- + - - - - - - - @@ -197,18 +177,15 @@

Coverage Summary for Package: com.stslex93.notes

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-1/sources/source-1.html b/docs/reports/ns-1/sources/source-1.html index 263e0f0c..045e66d6 100644 --- a/docs/reports/ns-1/sources/source-1.html +++ b/docs/reports/ns-1/sources/source-1.html @@ -4,23 +4,25 @@ - Coverage Report > BuildConfig + + app Coverage Report > Logger - + +
-

Coverage Summary for Class: BuildConfig (com.stslex93.notes)

+

Coverage Summary for Class: Logger (com.stslex.aproselection.core.core)

Package
com.stslex93.notescom.stslex.aproselection.core.core 0% - (0/3) + (0/1) + + + + 0% + + + (0/4) @@ -58,16 +68,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/6) + (0/8)
0% - (0/13) + (0/10) @@ -75,7 +84,7 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/53) + (0/38)
NoteApplicationLogger 0% - (0/2) + (0/1) @@ -128,13 +137,12 @@

Coverage Summary for Package: com.stslex93.notes

(0/4)
0% - (0/11) + (0/8) @@ -142,43 +150,15 @@

Coverage Summary for Package: com.stslex93.notes

0% - (0/48) + (0/10)
BuildConfig 0% - (0/1) - - - - 0% - - - (0/2) - - - - - 0% - - - (0/2) - - - - 0% - - - (0/5) + (0/38)
@@ -47,7 +49,7 @@

Coverage Summary for Class: BuildConfig (com.stslex93.notes)

- + - + @@ -88,7 +97,39 @@

Coverage Summary for Class: BuildConfig (com.stslex93.notes)



-
Source code is not available
+ +
+ package com.stslex.aproselection.core.core
+ 
+ import android.util.Log
+ 
+ object Logger {
+ 
+     private const val DEFAULT_TAG = "NOTES"
+ 
+     fun exception(
+         throwable: Throwable,
+         tag: String? = null,
+         message: String? = null
+     ) {
+         val currentTag = "$DEFAULT_TAG:${tag.orEmpty()}"
+         Log.e(
+             currentTag,
+             message ?: throwable.message.orEmpty(),
+             throwable,
+         )
+     }
+ 
+     fun debug(
+         message: String,
+         tag: String? = null,
+     ) {
+         val currentTag = "$DEFAULT_TAG:${tag.orEmpty()}"
+         Log.d(currentTag, message)
+     }
+ }
+
+
diff --git a/docs/reports/ns-1/sources/source-2.html b/docs/reports/ns-1/sources/source-2.html deleted file mode 100644 index 59e7c7ff..00000000 --- a/docs/reports/ns-1/sources/source-2.html +++ /dev/null @@ -1,197 +0,0 @@ - - - - - - - Coverage Report > NoteApplication - - - - - -
- - -

Coverage Summary for Class: NoteApplication (com.stslex93.notes)

- -
BuildConfigLogger 0% @@ -61,16 +63,15 @@

Coverage Summary for Class: BuildConfig (com.stslex93.notes)

0%
- (0/2) + (0/4)
0% - (0/2) + (0/8) @@ -78,7 +79,15 @@

Coverage Summary for Class: BuildConfig (com.stslex93.notes)

0% - (0/5) + (0/10) + +
+ + 0% + + + (0/38)
- - - - - - - - - - - - - - - - - - - - - - - - - - -
Class - Method, % - - Branch, % - - Line, % - - Instruction, % -
NoteApplication - - 0% - - - (0/3) - - - - - 0% - - - (0/4) - - - - 0% - - - (0/13) - -
NoteApplication$setUpKoin$1 - - 0% - - - (0/1) - - - - - 0% - - - (0/7) - - - - 0% - - - (0/35) - -
Total - - 0% - - - (0/4) - - - - - 0% - - - (0/11) - - - - 0% - - - (0/48) - -
- -
-
- - -
-
1 package com.stslex93.notes -2  -3 import android.app.Application -4 import com.stslex93.notes.core.database.coreDatabaseModule -5 import com.stslex93.notes.core.notes.di.coreNotesModule -6 import com.stslex93.notes.feature.edit.di.featureEditModule -7 import com.stslex93.notes.feature.home.di.featureHomeModule -8 import org.koin.android.ext.koin.androidContext -9 import org.koin.android.ext.koin.androidLogger -10 import org.koin.core.context.startKoin -11  -12 class NoteApplication : Application() { -13  -14  override fun onCreate() { -15  setUpKoin() -16  super.onCreate() -17  } -18  -19  private fun setUpKoin() { -20  startKoin { -21  androidLogger() -22  androidContext(this@NoteApplication) -23  modules( -24  coreDatabaseModule, -25  coreNotesModule, -26  featureEditModule, -27  featureHomeModule, -28  ) -29  } -30  } -31 } -
-
- - - - - - - diff --git a/docs/reports/ns-10/index.html b/docs/reports/ns-10/index.html new file mode 100644 index 00000000..ebf00646 --- /dev/null +++ b/docs/reports/ns-10/index.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.theme + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.theme

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-10/index_SORT_BY_BLOCK.html b/docs/reports/ns-10/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..60fa94ad --- /dev/null +++ b/docs/reports/ns-10/index_SORT_BY_BLOCK.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.theme + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.theme

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-10/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-10/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..8f54e23f --- /dev/null +++ b/docs/reports/ns-10/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.theme + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.theme

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-10/index_SORT_BY_CLASS.html b/docs/reports/ns-10/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..e6a123d7 --- /dev/null +++ b/docs/reports/ns-10/index_SORT_BY_CLASS.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.theme + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.theme

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-10/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-10/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..24bc3ef5 --- /dev/null +++ b/docs/reports/ns-10/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.theme + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.theme

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-10/index_SORT_BY_LINE.html b/docs/reports/ns-10/index_SORT_BY_LINE.html new file mode 100644 index 00000000..0c1a2cdc --- /dev/null +++ b/docs/reports/ns-10/index_SORT_BY_LINE.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.theme + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.theme

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-10/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-10/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..83edfd19 --- /dev/null +++ b/docs/reports/ns-10/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.theme + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.theme

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-10/index_SORT_BY_METHOD.html b/docs/reports/ns-10/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..41148e12 --- /dev/null +++ b/docs/reports/ns-10/index_SORT_BY_METHOD.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.theme + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.theme

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-10/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-10/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..b80ef2ec --- /dev/null +++ b/docs/reports/ns-10/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.theme + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.theme

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-10/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-10/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..8582afc0 --- /dev/null +++ b/docs/reports/ns-10/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.theme + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.theme

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-10/index_SORT_BY_STATEMENT.html b/docs/reports/ns-10/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..3a51b02a --- /dev/null +++ b/docs/reports/ns-10/index_SORT_BY_STATEMENT.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.theme + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.theme

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-10/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-10/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..752dde0f --- /dev/null +++ b/docs/reports/ns-10/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.theme + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.theme

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.theme + + 0% + + + (0/5) + + + + 0% + + + (0/22) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-10/sources/source-1.html b/docs/reports/ns-10/sources/source-1.html new file mode 100644 index 00000000..a6416d57 --- /dev/null +++ b/docs/reports/ns-10/sources/source-1.html @@ -0,0 +1,282 @@ + + + + + + + + app Coverage Report > AppDimens + + + + + + +
+ + +

Coverage Summary for Class: AppDimens (com.stslex93.notes.core.ui.theme)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDimens + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/2) + +
AppDimens$Corner + + 0% + + + (0/5) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
AppDimens$Elevation + + 0% + + + (0/4) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/18) + +
AppDimens$Icons + + 0% + + + (0/4) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/18) + +
AppDimens$Padding + + 0% + + + (0/6) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/30) + +
Total + + 0% + + + (0/20) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/92) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.ui.theme
+ 
+ import androidx.compose.ui.unit.dp
+ 
+ object AppDimens {
+ 
+     object Padding {
+         val smallest = 2.dp
+         val small = 4.dp
+         val medium = 8.dp
+         val normal = 16.dp
+         val big = 32.dp
+     }
+ 
+     object Corner {
+         val small = 5.dp
+         val medium = 10.dp
+         val normal = 15.dp
+         val big = 20.dp
+     }
+ 
+     object Elevation {
+         val small = 4.dp
+         val medium = 8.dp
+         val big = 16.dp
+     }
+ 
+     object Icons {
+         val small = 12.dp
+         val medium = 24.dp
+         val big = 36.dp
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-10/sources/source-2.html b/docs/reports/ns-10/sources/source-2.html new file mode 100644 index 00000000..4a47d6ca --- /dev/null +++ b/docs/reports/ns-10/sources/source-2.html @@ -0,0 +1,135 @@ + + + + + + + + app Coverage Report > AppThemeKt + + + + + + +
+ + +

Coverage Summary for Class: AppThemeKt (com.stslex93.notes.core.ui.theme)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
AppThemeKt + + 0% + + + (0/2) + + +
+ +
+
+ + +
+ package com.stslex93.notes.core.ui.theme
+ 
+ import android.os.Build
+ import androidx.compose.foundation.background
+ import androidx.compose.foundation.isSystemInDarkTheme
+ import androidx.compose.foundation.layout.Box
+ import androidx.compose.foundation.layout.BoxScope
+ import androidx.compose.foundation.layout.fillMaxSize
+ import androidx.compose.material3.MaterialTheme
+ import androidx.compose.material3.darkColorScheme
+ import androidx.compose.material3.dynamicDarkColorScheme
+ import androidx.compose.material3.dynamicLightColorScheme
+ import androidx.compose.material3.lightColorScheme
+ import androidx.compose.runtime.Composable
+ import androidx.compose.ui.Modifier
+ import androidx.compose.ui.platform.LocalContext
+ 
+ @Composable
+ fun AppTheme(
+     content: @Composable () -> Unit
+ ) {
+     val isDarkTheme = isSystemInDarkTheme()
+     val colorScheme = when {
+         Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> {
+             val context = LocalContext.current
+             if (isDarkTheme) dynamicDarkColorScheme(context) else dynamicLightColorScheme(context)
+         }
+ 
+         isDarkTheme -> darkColorScheme()
+         else -> lightColorScheme()
+     }
+     MaterialTheme(
+         colorScheme = colorScheme,
+         content = content
+     )
+ }
+ 
+ @Composable
+ fun PreviewTheme(
+     content: @Composable BoxScope.() -> Unit
+ ) {
+     AppTheme {
+         Box(
+             modifier = Modifier
+                 .fillMaxSize()
+                 .background(MaterialTheme.colorScheme.background),
+             content = content
+         )
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-11/index.html b/docs/reports/ns-11/index.html new file mode 100644 index 00000000..b3b8ca09 --- /dev/null +++ b/docs/reports/ns-11/index.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.interactor + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-11/index_SORT_BY_BLOCK.html b/docs/reports/ns-11/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..fa28e26e --- /dev/null +++ b/docs/reports/ns-11/index_SORT_BY_BLOCK.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.interactor + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-11/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-11/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..ec9c637f --- /dev/null +++ b/docs/reports/ns-11/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.interactor + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-11/index_SORT_BY_CLASS.html b/docs/reports/ns-11/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..79729feb --- /dev/null +++ b/docs/reports/ns-11/index_SORT_BY_CLASS.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.interactor + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-11/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-11/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..3c56b9fb --- /dev/null +++ b/docs/reports/ns-11/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.interactor + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-11/index_SORT_BY_LINE.html b/docs/reports/ns-11/index_SORT_BY_LINE.html new file mode 100644 index 00000000..d29cf54e --- /dev/null +++ b/docs/reports/ns-11/index_SORT_BY_LINE.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.interactor + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-11/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-11/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..d6422a98 --- /dev/null +++ b/docs/reports/ns-11/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.interactor + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-11/index_SORT_BY_METHOD.html b/docs/reports/ns-11/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..0a4135dd --- /dev/null +++ b/docs/reports/ns-11/index_SORT_BY_METHOD.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.interactor + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-11/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-11/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..9e4116ae --- /dev/null +++ b/docs/reports/ns-11/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.interactor + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-11/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-11/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..9969b219 --- /dev/null +++ b/docs/reports/ns-11/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.interactor + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-11/index_SORT_BY_STATEMENT.html b/docs/reports/ns-11/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..898f78b1 --- /dev/null +++ b/docs/reports/ns-11/index_SORT_BY_STATEMENT.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.interactor + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-11/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-11/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..78405ec7 --- /dev/null +++ b/docs/reports/ns-11/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.interactor + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-11/sources/source-1.html b/docs/reports/ns-11/sources/source-1.html new file mode 100644 index 00000000..136444de --- /dev/null +++ b/docs/reports/ns-11/sources/source-1.html @@ -0,0 +1,195 @@ + + + + + + + + app Coverage Report > NoteEditInteractorImpl + + + + + + +
+ + +

Coverage Summary for Class: NoteEditInteractorImpl (com.stslex93.notes.feature.edit.domain.interactor)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteEditInteractorImpl + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
NoteEditInteractorImpl$getNote$$inlined$map$1 + + 0% + + + (0/2) + + +
NoteEditInteractorImpl$getNote$$inlined$map$1$2 + + 0% + + + (0/1) + + +
NoteEditInteractorImpl$getNote$$inlined$map$1$2$1 +
Total + + 0% + + + (0/6) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/27) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.domain.interactor
+ 
+ import com.stslex93.notes.core.label.repository.LabelRepository
+ import com.stslex93.notes.core.notes.repository.NoteRepository
+ import com.stslex93.notes.feature.edit.domain.model.NoteDomainModel
+ import com.stslex93.notes.feature.edit.domain.model.toData
+ import com.stslex93.notes.feature.edit.domain.model.toDomain
+ import kotlinx.coroutines.flow.map
+ import javax.inject.Inject
+ 
+ class NoteEditInteractorImpl @Inject constructor(
+     private val repository: NoteRepository,
+     private val labelRepository: LabelRepository
+ ) : NoteEditInteractor {
+ 
+     override fun getNote(id: Int) = repository
+         .getNoteFlow(id)
+         .map { note ->
+             val labels = labelRepository
+                 .getAllLabels(note.labelUuids)
+                 .toDomain()
+             note.toDomain(
+                 labels = labels
+             )
+         }
+ 
+     override suspend fun insert(note: NoteDomainModel) {
+         repository.insert(note.toData())
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-11/sources/source-2.html b/docs/reports/ns-11/sources/source-2.html new file mode 100644 index 00000000..be871488 --- /dev/null +++ b/docs/reports/ns-11/sources/source-2.html @@ -0,0 +1,85 @@ + + + + + + + + app Coverage Report > NoteEditInteractor + + + + + + +
+ + +

Coverage Summary for Class: NoteEditInteractor (com.stslex93.notes.feature.edit.domain.interactor)

+ + + + + + + + + + +
Class + Branch, % +
NoteEditInteractor +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.domain.interactor
+ 
+ import com.stslex93.notes.feature.edit.domain.model.NoteDomainModel
+ import kotlinx.coroutines.flow.Flow
+ 
+ interface NoteEditInteractor {
+ 
+     fun getNote(id: Int): Flow<NoteDomainModel>
+ 
+     suspend fun insert(note: NoteDomainModel)
+ }
+ 
+
+
+
+ + + + + + diff --git a/docs/reports/ns-12/index.html b/docs/reports/ns-12/index.html new file mode 100644 index 00000000..c457fbfc --- /dev/null +++ b/docs/reports/ns-12/index.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/27) + + + + 0% + + + (0/104) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-12/index_SORT_BY_BLOCK.html b/docs/reports/ns-12/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..48043fc7 --- /dev/null +++ b/docs/reports/ns-12/index_SORT_BY_BLOCK.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/27) + + + + 0% + + + (0/104) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-12/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-12/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..4007d57c --- /dev/null +++ b/docs/reports/ns-12/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/27) + + + + 0% + + + (0/104) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-12/index_SORT_BY_CLASS.html b/docs/reports/ns-12/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..c4dfb29a --- /dev/null +++ b/docs/reports/ns-12/index_SORT_BY_CLASS.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/27) + + + + 0% + + + (0/104) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-12/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-12/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..9614c2b7 --- /dev/null +++ b/docs/reports/ns-12/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/27) + + + + 0% + + + (0/104) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-12/index_SORT_BY_LINE.html b/docs/reports/ns-12/index_SORT_BY_LINE.html new file mode 100644 index 00000000..548a7fbe --- /dev/null +++ b/docs/reports/ns-12/index_SORT_BY_LINE.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/27) + + + + 0% + + + (0/104) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-12/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-12/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..768e0cb8 --- /dev/null +++ b/docs/reports/ns-12/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/27) + + + + 0% + + + (0/104) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-12/index_SORT_BY_METHOD.html b/docs/reports/ns-12/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..0c36b57b --- /dev/null +++ b/docs/reports/ns-12/index_SORT_BY_METHOD.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/27) + + + + 0% + + + (0/104) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-12/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-12/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..3127d8cb --- /dev/null +++ b/docs/reports/ns-12/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/27) + + + + 0% + + + (0/104) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-12/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-12/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..104e6af7 --- /dev/null +++ b/docs/reports/ns-12/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/27) + + + + 0% + + + (0/104) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-12/index_SORT_BY_STATEMENT.html b/docs/reports/ns-12/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..2a90b843 --- /dev/null +++ b/docs/reports/ns-12/index_SORT_BY_STATEMENT.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/27) + + + + 0% + + + (0/104) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-12/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-12/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..2d9ad01b --- /dev/null +++ b/docs/reports/ns-12/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/27) + + + + 0% + + + (0/104) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-12/sources/source-1.html b/docs/reports/ns-12/sources/source-1.html new file mode 100644 index 00000000..70bd89cf --- /dev/null +++ b/docs/reports/ns-12/sources/source-1.html @@ -0,0 +1,127 @@ + + + + + + + + app Coverage Report > LabelDomain + + + + + + +
+ + +

Coverage Summary for Class: LabelDomain (com.stslex93.notes.feature.edit.domain.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.domain.model
+ 
+ data class LabelDomain(
+     val uuid: String,
+     val title: String
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-12/sources/source-2.html b/docs/reports/ns-12/sources/source-2.html new file mode 100644 index 00000000..164dcce0 --- /dev/null +++ b/docs/reports/ns-12/sources/source-2.html @@ -0,0 +1,152 @@ + + + + + + + + app Coverage Report > NoteDomainMapperKt + + + + + + +
+ + +

Coverage Summary for Class: NoteDomainMapperKt (com.stslex93.notes.feature.edit.domain.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/65) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.domain.model
+ 
+ import com.stslex93.notes.core.label.model.LabelDataModel
+ import com.stslex93.notes.core.notes.model.NoteDataModel
+ 
+ fun NoteDataModel.toDomain(
+     labels: Set<LabelDomain>
+ ) = NoteDomainModel(
+     id = id,
+     title = title,
+     content = content,
+     timestamp = timestamp,
+     labels = labels
+ )
+ 
+ fun NoteDomainModel.toData() = NoteDataModel(
+     id = id,
+     title = title,
+     content = content,
+     timestamp = timestamp,
+     labelUuids = labels.map { it.uuid }.toSet()
+ )
+ 
+ fun Set<LabelDataModel>.toDomain() = map { label ->
+     label.toDomain()
+ }.toSet()
+ 
+ fun LabelDataModel.toDomain() = LabelDomain(
+     uuid = uuid,
+     title = title
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-12/sources/source-3.html b/docs/reports/ns-12/sources/source-3.html new file mode 100644 index 00000000..42b50f74 --- /dev/null +++ b/docs/reports/ns-12/sources/source-3.html @@ -0,0 +1,130 @@ + + + + + + + + app Coverage Report > NoteDomainModel + + + + + + +
+ + +

Coverage Summary for Class: NoteDomainModel (com.stslex93.notes.feature.edit.domain.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.domain.model
+ 
+ data class NoteDomainModel(
+     val id: Int,
+     val title: String,
+     val content: String,
+     val timestamp: Long,
+     val labels: Set<LabelDomain>
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-13/index.html b/docs/reports/ns-13/index.html new file mode 100644 index 00000000..8ab8af15 --- /dev/null +++ b/docs/reports/ns-13/index.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui + + 0% + + + (0/2) + + + + 0% + + + (0/13) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/46) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-13/index_SORT_BY_BLOCK.html b/docs/reports/ns-13/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..00bbf771 --- /dev/null +++ b/docs/reports/ns-13/index_SORT_BY_BLOCK.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui + + 0% + + + (0/2) + + + + 0% + + + (0/13) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/46) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-13/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-13/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..517a3e33 --- /dev/null +++ b/docs/reports/ns-13/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui + + 0% + + + (0/2) + + + + 0% + + + (0/13) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/46) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-13/index_SORT_BY_CLASS.html b/docs/reports/ns-13/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..70180db6 --- /dev/null +++ b/docs/reports/ns-13/index_SORT_BY_CLASS.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui + + 0% + + + (0/2) + + + + 0% + + + (0/13) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/46) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-13/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-13/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..cf6aed35 --- /dev/null +++ b/docs/reports/ns-13/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui + + 0% + + + (0/2) + + + + 0% + + + (0/13) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/46) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-13/index_SORT_BY_LINE.html b/docs/reports/ns-13/index_SORT_BY_LINE.html new file mode 100644 index 00000000..cab9c1e8 --- /dev/null +++ b/docs/reports/ns-13/index_SORT_BY_LINE.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui + + 0% + + + (0/2) + + + + 0% + + + (0/13) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/46) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-13/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-13/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..4d0f2b04 --- /dev/null +++ b/docs/reports/ns-13/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui + + 0% + + + (0/2) + + + + 0% + + + (0/13) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/46) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-13/index_SORT_BY_METHOD.html b/docs/reports/ns-13/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..c0b4b306 --- /dev/null +++ b/docs/reports/ns-13/index_SORT_BY_METHOD.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui + + 0% + + + (0/2) + + + + 0% + + + (0/13) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/46) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-13/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-13/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..01b20674 --- /dev/null +++ b/docs/reports/ns-13/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui + + 0% + + + (0/2) + + + + 0% + + + (0/13) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/46) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-13/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-13/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..d4dacc63 --- /dev/null +++ b/docs/reports/ns-13/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui + + 0% + + + (0/2) + + + + 0% + + + (0/13) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/46) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-13/index_SORT_BY_STATEMENT.html b/docs/reports/ns-13/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..a3122013 --- /dev/null +++ b/docs/reports/ns-13/index_SORT_BY_STATEMENT.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui + + 0% + + + (0/2) + + + + 0% + + + (0/13) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/46) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-13/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-13/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..7acbc53f --- /dev/null +++ b/docs/reports/ns-13/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui + + 0% + + + (0/2) + + + + 0% + + + (0/13) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/46) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-13/sources/source-1.html b/docs/reports/ns-13/sources/source-1.html new file mode 100644 index 00000000..73bfcc91 --- /dev/null +++ b/docs/reports/ns-13/sources/source-1.html @@ -0,0 +1,134 @@ + + + + + + + + app Coverage Report > ComposableSingletons + + + + + + +
+ + +

Coverage Summary for Class: ComposableSingletons (com.stslex93.notes.feature.edit.ui)

+ + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons$EditScreenKt + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
Total + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/24) + +
+ +
+
+ + Source code is not available
+
+ + + + + + diff --git a/docs/reports/ns-13/sources/source-2.html b/docs/reports/ns-13/sources/source-2.html new file mode 100644 index 00000000..0f841c40 --- /dev/null +++ b/docs/reports/ns-13/sources/source-2.html @@ -0,0 +1,148 @@ + + + + + + + + app Coverage Report > EditNoteViewModel + + + + + + +
+ + +

Coverage Summary for Class: EditNoteViewModel (com.stslex93.notes.feature.edit.ui)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditNoteViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/22) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.ui
+ 
+ import com.stslex93.notes.core.navigation.model.AppArguments
+ import com.stslex93.notes.core.navigation.model.NavigationScreen
+ import com.stslex93.notes.core.ui.base.BaseViewModel
+ import com.stslex93.notes.core.ui.di.Navigator
+ import com.stslex93.notes.feature.edit.ui.store.EditStore
+ import javax.inject.Inject
+ 
+ class EditNoteViewModel @Inject constructor(
+     store: EditStore,
+     private val navigator: Navigator,
+ ) : BaseViewModel<EditStore.State, EditStore.Event, EditStore.Action>(store) {
+ 
+     fun init(arguments: AppArguments.NoteEdit) {
+         sendAction(
+             EditStore.Action.Init(
+                 id = arguments.noteId,
+                 isEdit = arguments.isEdit
+             )
+         )
+     }
+ 
+     fun popBackStack() {
+         navigator(NavigationScreen.PopBackStack)
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-13/sources/source-3.html b/docs/reports/ns-13/sources/source-3.html new file mode 100644 index 00000000..9c2067ba --- /dev/null +++ b/docs/reports/ns-13/sources/source-3.html @@ -0,0 +1,207 @@ + + + + + + + + app Coverage Report > EditScreenKt + + + + + + +
+ + +

Coverage Summary for Class: EditScreenKt (com.stslex93.notes.feature.edit.ui)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
EditScreenKt + + 0% + + + (0/2) + + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.ui
+ 
+ import androidx.compose.foundation.layout.Box
+ import androidx.compose.foundation.layout.Column
+ import androidx.compose.foundation.layout.fillMaxSize
+ import androidx.compose.foundation.layout.fillMaxWidth
+ import androidx.compose.foundation.layout.padding
+ import androidx.compose.foundation.layout.systemBarsPadding
+ import androidx.compose.foundation.layout.wrapContentHeight
+ import androidx.compose.material.icons.Icons
+ import androidx.compose.material.icons.automirrored.filled.ArrowBack
+ import androidx.compose.material3.FloatingActionButton
+ import androidx.compose.material3.Icon
+ import androidx.compose.material3.MaterialTheme
+ import androidx.compose.material3.Text
+ import androidx.compose.material3.TextField
+ import androidx.compose.runtime.Composable
+ import androidx.compose.ui.Alignment
+ import androidx.compose.ui.Modifier
+ import androidx.compose.ui.res.stringResource
+ import androidx.compose.ui.tooling.preview.Preview
+ import com.stslex93.notes.core.ui.theme.AppDimens
+ import com.stslex93.notes.core.ui.theme.AppTheme
+ import com.stslex93.notes.feature.edit.R
+ import com.stslex93.notes.feature.edit.ui.components.LabelsHeader
+ import com.stslex93.notes.feature.edit.ui.model.Label
+ import com.stslex93.notes.feature.edit.ui.model.Note
+ import com.stslex93.notes.feature.edit.ui.store.EditStore
+ import kotlinx.collections.immutable.toImmutableSet
+ 
+ @Composable
+ fun EditScreen(
+     state: EditStore.State,
+     onInputTitle: (String) -> Unit,
+     onInputContent: (String) -> Unit,
+     onBackButtonClicked: () -> Unit,
+     modifier: Modifier = Modifier
+ ) {
+     Column(
+         modifier = modifier
+             .fillMaxSize()
+             .systemBarsPadding()
+     ) {
+         TextField(
+             modifier = Modifier
+                 .wrapContentHeight()
+                 .fillMaxWidth()
+                 .padding(horizontal = AppDimens.Padding.normal),
+             value = state.note.title,
+             onValueChange = onInputTitle,
+             singleLine = true,
+             label = {
+                 Text(text = stringResource(id = R.string.title_hint))
+             }
+         )
+ 
+         TextField(
+             modifier = Modifier
+                 .weight(1f)
+                 .fillMaxWidth()
+                 .padding(AppDimens.Padding.normal),
+             value = state.note.content,
+             onValueChange = onInputContent,
+             label = {
+                 Text(text = stringResource(id = R.string.content_hint))
+             }
+         )
+ 
+         LabelsHeader(state.note.labels)
+ 
+         Box(
+             modifier = Modifier
+                 .fillMaxWidth()
+                 .wrapContentHeight()
+         ) {
+             Text(
+                 modifier = Modifier.align(Alignment.Center),
+                 text = stringResource(id = R.string.label_edit) + ":${state.timeString}",
+                 style = MaterialTheme.typography.bodyMedium,
+                 color = MaterialTheme.colorScheme.onBackground,
+             )
+ 
+             FloatingActionButton(
+                 modifier = Modifier
+                     .align(Alignment.CenterEnd)
+                     .padding(AppDimens.Padding.normal),
+                 onClick = onBackButtonClicked
+             ) {
+                 Icon(
+                     imageVector = Icons.AutoMirrored.Filled.ArrowBack,
+                     contentDescription = "return"
+                 )
+             }
+         }
+     }
+ }
+ 
+ @Composable
+ @Preview
+ fun EditScreenPreview() {
+     AppTheme {
+         val labels = Array(10) { index ->
+             Label(
+                 uuid = "uuid $index",
+                 title = "labelNum$index"
+             )
+         }.toList().toImmutableSet()
+         EditScreen(
+             state = EditStore.State(
+                 note = Note(
+                     uuid = 0,
+                     title = "title",
+                     content = "content",
+                     timestamp = System.currentTimeMillis(),
+                     labels = labels
+                 )
+             ),
+             onInputTitle = {},
+             onInputContent = {},
+             onBackButtonClicked = { /*TODO*/ })
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-14/index.html b/docs/reports/ns-14/index.html new file mode 100644 index 00000000..882c4dc1 --- /dev/null +++ b/docs/reports/ns-14/index.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.components + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-14/index_SORT_BY_BLOCK.html b/docs/reports/ns-14/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..1eecd4c2 --- /dev/null +++ b/docs/reports/ns-14/index_SORT_BY_BLOCK.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.components + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-14/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-14/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..ccb807d3 --- /dev/null +++ b/docs/reports/ns-14/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.components + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-14/index_SORT_BY_CLASS.html b/docs/reports/ns-14/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..cd17cbf6 --- /dev/null +++ b/docs/reports/ns-14/index_SORT_BY_CLASS.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.components + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-14/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-14/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..c4aac82b --- /dev/null +++ b/docs/reports/ns-14/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.components + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-14/index_SORT_BY_LINE.html b/docs/reports/ns-14/index_SORT_BY_LINE.html new file mode 100644 index 00000000..7ee8b6cd --- /dev/null +++ b/docs/reports/ns-14/index_SORT_BY_LINE.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.components + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-14/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-14/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..462125c6 --- /dev/null +++ b/docs/reports/ns-14/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.components + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-14/index_SORT_BY_METHOD.html b/docs/reports/ns-14/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..f7e6d198 --- /dev/null +++ b/docs/reports/ns-14/index_SORT_BY_METHOD.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.components + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-14/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-14/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..8b0a3461 --- /dev/null +++ b/docs/reports/ns-14/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.components + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-14/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-14/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..7a9ab9a7 --- /dev/null +++ b/docs/reports/ns-14/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.components + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-14/index_SORT_BY_STATEMENT.html b/docs/reports/ns-14/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..32bd940f --- /dev/null +++ b/docs/reports/ns-14/index_SORT_BY_STATEMENT.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.components + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-14/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-14/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..14a65f98 --- /dev/null +++ b/docs/reports/ns-14/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.components + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-14/sources/source-1.html b/docs/reports/ns-14/sources/source-1.html new file mode 100644 index 00000000..f505844a --- /dev/null +++ b/docs/reports/ns-14/sources/source-1.html @@ -0,0 +1,134 @@ + + + + + + + + app Coverage Report > ComposableSingletons + + + + + + +
+ + +

Coverage Summary for Class: ComposableSingletons (com.stslex93.notes.feature.edit.ui.components)

+ + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons$LabelsRowKt + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
Total + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + Source code is not available
+
+ + + + + + diff --git a/docs/reports/ns-14/sources/source-2.html b/docs/reports/ns-14/sources/source-2.html new file mode 100644 index 00000000..4674a378 --- /dev/null +++ b/docs/reports/ns-14/sources/source-2.html @@ -0,0 +1,210 @@ + + + + + + + + app Coverage Report > LabelsRowKt + + + + + + +
+ + +

Coverage Summary for Class: LabelsRowKt (com.stslex93.notes.feature.edit.ui.components)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
LabelsRowKt + + 0% + + + (0/3) + + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.ui.components
+ 
+ import androidx.compose.animation.AnimatedVisibility
+ import androidx.compose.foundation.layout.ExperimentalLayoutApi
+ import androidx.compose.foundation.layout.FlowRow
+ import androidx.compose.foundation.layout.fillMaxWidth
+ import androidx.compose.foundation.layout.padding
+ import androidx.compose.foundation.layout.wrapContentSize
+ import androidx.compose.foundation.shape.RoundedCornerShape
+ import androidx.compose.material3.DividerDefaults
+ import androidx.compose.material3.ElevatedCard
+ import androidx.compose.material3.ExperimentalMaterial3Api
+ import androidx.compose.material3.HorizontalDivider
+ import androidx.compose.material3.MaterialTheme
+ import androidx.compose.material3.OutlinedCard
+ import androidx.compose.material3.Text
+ import androidx.compose.runtime.Composable
+ import androidx.compose.runtime.getValue
+ import androidx.compose.runtime.mutableStateOf
+ import androidx.compose.runtime.remember
+ import androidx.compose.runtime.setValue
+ import androidx.compose.ui.Alignment
+ import androidx.compose.ui.Modifier
+ import androidx.compose.ui.text.style.TextAlign
+ import androidx.compose.ui.text.style.TextOverflow
+ import androidx.compose.ui.tooling.preview.Preview
+ import com.stslex93.notes.core.ui.theme.AppDimens
+ import com.stslex93.notes.core.ui.theme.AppTheme
+ import com.stslex93.notes.feature.edit.ui.model.Label
+ import kotlinx.collections.immutable.ImmutableSet
+ import kotlinx.collections.immutable.toImmutableSet
+ 
+ @OptIn(ExperimentalMaterial3Api::class)
+ @Composable
+ fun LabelsHeader(
+     labels: ImmutableSet<Label>,
+     modifier: Modifier = Modifier
+ ) {
+     var isExpanded by remember {
+         mutableStateOf(false)
+     }
+ 
+     if (labels.isNotEmpty()) {
+         OutlinedCard(
+             modifier = modifier
+                 .fillMaxWidth()
+                 .padding(
+                     horizontal = AppDimens.Padding.normal
+                 ),
+             onClick = {
+                 isExpanded = isExpanded.not()
+             }
+         ) {
+             Text(
+                 modifier = Modifier
+                     .padding(AppDimens.Padding.medium),
+                 text = "Labels",
+                 style = MaterialTheme.typography.bodyMedium
+             )
+             AnimatedVisibility(
+                 visible = isExpanded
+             ) {
+                 HorizontalDivider(Modifier, DividerDefaults.Thickness, DividerDefaults.color)
+                 LabelsRow(
+                     modifier = Modifier
+                         .fillMaxWidth()
+                         .padding(AppDimens.Padding.medium),
+                     labels = labels
+                 )
+             }
+         }
+     }
+ }
+ 
+ @OptIn(ExperimentalLayoutApi::class)
+ @Composable
+ fun LabelsRow(
+     labels: ImmutableSet<Label>,
+     modifier: Modifier = Modifier
+ ) {
+     FlowRow(
+         modifier = modifier
+     ) {
+         labels.forEach { label ->
+             ElevatedCard(
+                 modifier = Modifier
+                     .padding(AppDimens.Padding.small)
+                     .wrapContentSize(),
+                 shape = RoundedCornerShape(AppDimens.Corner.small),
+             ) {
+                 Text(
+                     modifier = Modifier
+                         .padding(
+                             vertical = AppDimens.Padding.small,
+                             horizontal = AppDimens.Padding.medium
+                         )
+                         .align(Alignment.CenterHorizontally),
+                     text = label.title.take(16),
+                     color = MaterialTheme.colorScheme.onSurface,
+                     style = MaterialTheme.typography.bodySmall,
+                     maxLines = 1,
+                     overflow = TextOverflow.Ellipsis,
+                     textAlign = TextAlign.Center
+                 )
+             }
+         }
+     }
+ }
+ 
+ @Composable
+ @Preview
+ fun LabelsRowPreview() {
+     AppTheme {
+         val labels = Array(10) { index ->
+             Label(
+                 uuid = "uuid $index",
+                 title = "labelNum$index"
+             )
+         }.toList().toImmutableSet()
+ 
+         LabelsRow(
+             labels = labels
+         )
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-15/index.html b/docs/reports/ns-15/index.html new file mode 100644 index 00000000..392996cd --- /dev/null +++ b/docs/reports/ns-15/index.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.init

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.init + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-15/index_SORT_BY_BLOCK.html b/docs/reports/ns-15/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..f242ac05 --- /dev/null +++ b/docs/reports/ns-15/index_SORT_BY_BLOCK.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.init

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.init + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-15/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-15/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..2aeaece1 --- /dev/null +++ b/docs/reports/ns-15/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.init

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.init + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-15/index_SORT_BY_CLASS.html b/docs/reports/ns-15/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..1a02cb2a --- /dev/null +++ b/docs/reports/ns-15/index_SORT_BY_CLASS.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.init

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.init + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-15/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-15/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..36c28e35 --- /dev/null +++ b/docs/reports/ns-15/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.init

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.init + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-15/index_SORT_BY_LINE.html b/docs/reports/ns-15/index_SORT_BY_LINE.html new file mode 100644 index 00000000..121e3e6c --- /dev/null +++ b/docs/reports/ns-15/index_SORT_BY_LINE.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.init

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.init + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-15/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-15/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..0774c015 --- /dev/null +++ b/docs/reports/ns-15/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.init

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.init + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-15/index_SORT_BY_METHOD.html b/docs/reports/ns-15/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..45f2fb63 --- /dev/null +++ b/docs/reports/ns-15/index_SORT_BY_METHOD.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.init

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.init + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-15/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-15/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..fa7a3608 --- /dev/null +++ b/docs/reports/ns-15/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.init

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.init + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-15/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-15/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..96100795 --- /dev/null +++ b/docs/reports/ns-15/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.init

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.init + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-15/index_SORT_BY_STATEMENT.html b/docs/reports/ns-15/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..49bbb6a1 --- /dev/null +++ b/docs/reports/ns-15/index_SORT_BY_STATEMENT.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.init

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.init + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-15/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-15/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..eb729edb --- /dev/null +++ b/docs/reports/ns-15/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.init

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.init + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-15/sources/source-1.html b/docs/reports/ns-15/sources/source-1.html new file mode 100644 index 00000000..91eba8bb --- /dev/null +++ b/docs/reports/ns-15/sources/source-1.html @@ -0,0 +1,206 @@ + + + + + + + + app Coverage Report > EditGraphKt + + + + + + +
+ + +

Coverage Summary for Class: EditGraphKt (com.stslex93.notes.feature.edit.ui.init)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditGraphKt + + 0% + + + (0/2) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/24) + +
EditGraphKt$editGraph$1$1$1 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/5) + +
Total + + 0% + + + (0/3) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.ui.init
+ 
+ import androidx.compose.runtime.LaunchedEffect
+ import androidx.compose.ui.Modifier
+ import androidx.navigation.NavGraphBuilder
+ import androidx.navigation.compose.composable
+ import com.stslex93.notes.core.navigation.model.AppArguments
+ import com.stslex93.notes.core.navigation.model.AppDestination
+ import com.stslex93.notes.core.navigation.utils.NavExt.composableArguments
+ import com.stslex93.notes.core.navigation.utils.NavExt.parseArguments
+ import com.stslex93.notes.feature.edit.di.setupComponent
+ 
+ fun NavGraphBuilder.editGraph(
+     modifier: Modifier = Modifier,
+ ) {
+     composable(
+         route = AppDestination.NOTE_EDIT.navigationRoute,
+         arguments = AppDestination.NOTE_EDIT.composableArguments
+     ) { navBackStackEntry ->
+ 
+         val arguments = AppDestination.NOTE_EDIT
+             .parseArguments(navBackStackEntry)
+             .let { args ->
+                 AppArguments.NoteEdit(
+                     noteId = args[0].toIntOrNull() ?: -1,
+                     isEdit = args[1].toBooleanStrictOrNull() ?: false
+                 )
+             }
+ 
+         val viewModel = setupComponent(arguments.hashCode().toString())
+ 
+         LaunchedEffect(Unit) {
+             viewModel.init(arguments)
+         }
+ 
+         InitEditScreen(
+             modifier = modifier,
+             viewModel = viewModel
+         )
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-15/sources/source-2.html b/docs/reports/ns-15/sources/source-2.html new file mode 100644 index 00000000..5cf12026 --- /dev/null +++ b/docs/reports/ns-15/sources/source-2.html @@ -0,0 +1,131 @@ + + + + + + + + app Coverage Report > InitEditScreenKt + + + + + + +
+ + +

Coverage Summary for Class: InitEditScreenKt (com.stslex93.notes.feature.edit.ui.init)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
InitEditScreenKt + + 0% + + + (0/1) + + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.ui.init
+ 
+ import androidx.compose.runtime.Composable
+ import androidx.compose.runtime.DisposableEffect
+ import androidx.compose.runtime.collectAsState
+ import androidx.compose.runtime.getValue
+ import androidx.compose.runtime.remember
+ import androidx.compose.ui.Modifier
+ import androidx.lifecycle.Lifecycle
+ import androidx.lifecycle.LifecycleEventObserver
+ import androidx.lifecycle.compose.LocalLifecycleOwner
+ import com.stslex93.notes.feature.edit.ui.EditNoteViewModel
+ import com.stslex93.notes.feature.edit.ui.EditScreen
+ import com.stslex93.notes.feature.edit.ui.store.EditStore.Action
+ 
+ @Composable
+ fun InitEditScreen(
+     viewModel: EditNoteViewModel,
+     modifier: Modifier = Modifier
+ ) {
+     val lifecycleOwner = LocalLifecycleOwner.current
+ 
+     DisposableEffect(lifecycleOwner) {
+         val observer = LifecycleEventObserver { _, event ->
+             if (event == Lifecycle.Event.ON_STOP) {
+                 viewModel.sendAction(Action.SaveNote)
+             }
+         }
+         lifecycleOwner.lifecycle.addObserver(observer)
+         onDispose {
+             lifecycleOwner.lifecycle.removeObserver(observer)
+         }
+     }
+ 
+     val state by remember(viewModel) {
+         viewModel.state
+     }.collectAsState()
+ 
+     EditScreen(
+         modifier = modifier,
+         state = state,
+         onInputTitle = { viewModel.sendAction(Action.InputTitle(it)) },
+         onInputContent = { viewModel.sendAction(Action.InputContent(it)) },
+         onBackButtonClicked = viewModel::popBackStack
+     )
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-16/index.html b/docs/reports/ns-16/index.html new file mode 100644 index 00000000..a15145bc --- /dev/null +++ b/docs/reports/ns-16/index.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-16/index_SORT_BY_BLOCK.html b/docs/reports/ns-16/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..a8aad7cd --- /dev/null +++ b/docs/reports/ns-16/index_SORT_BY_BLOCK.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-16/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-16/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..1f5d0d55 --- /dev/null +++ b/docs/reports/ns-16/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-16/index_SORT_BY_CLASS.html b/docs/reports/ns-16/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..93bdf305 --- /dev/null +++ b/docs/reports/ns-16/index_SORT_BY_CLASS.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-16/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-16/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..46ec4e1e --- /dev/null +++ b/docs/reports/ns-16/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-16/index_SORT_BY_LINE.html b/docs/reports/ns-16/index_SORT_BY_LINE.html new file mode 100644 index 00000000..4769b356 --- /dev/null +++ b/docs/reports/ns-16/index_SORT_BY_LINE.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-16/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-16/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..6f501fd8 --- /dev/null +++ b/docs/reports/ns-16/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-16/index_SORT_BY_METHOD.html b/docs/reports/ns-16/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..191e0f61 --- /dev/null +++ b/docs/reports/ns-16/index_SORT_BY_METHOD.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-16/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-16/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..315e4d9a --- /dev/null +++ b/docs/reports/ns-16/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-16/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-16/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..191682f5 --- /dev/null +++ b/docs/reports/ns-16/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-16/index_SORT_BY_STATEMENT.html b/docs/reports/ns-16/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..1f25f7c8 --- /dev/null +++ b/docs/reports/ns-16/index_SORT_BY_STATEMENT.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-16/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-16/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..48d7aad8 --- /dev/null +++ b/docs/reports/ns-16/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-16/sources/source-1.html b/docs/reports/ns-16/sources/source-1.html new file mode 100644 index 00000000..727be271 --- /dev/null +++ b/docs/reports/ns-16/sources/source-1.html @@ -0,0 +1,130 @@ + + + + + + + + app Coverage Report > Label + + + + + + +
+ + +

Coverage Summary for Class: Label (com.stslex93.notes.feature.edit.ui.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.ui.model
+ 
+ import androidx.compose.runtime.Stable
+ 
+ @Stable
+ data class Label(
+     val uuid: String,
+     val title: String
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-16/sources/source-2.html b/docs/reports/ns-16/sources/source-2.html new file mode 100644 index 00000000..8583fc54 --- /dev/null +++ b/docs/reports/ns-16/sources/source-2.html @@ -0,0 +1,134 @@ + + + + + + + + app Coverage Report > Note + + + + + + +
+ + +

Coverage Summary for Class: Note (com.stslex93.notes.feature.edit.ui.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.ui.model
+ 
+ import androidx.compose.runtime.Stable
+ import kotlinx.collections.immutable.ImmutableSet
+ 
+ @Stable
+ data class Note(
+     val uuid: Int,
+     val title: String,
+     val content: String,
+     val timestamp: Long,
+     val labels: ImmutableSet<Label>
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-16/sources/source-3.html b/docs/reports/ns-16/sources/source-3.html new file mode 100644 index 00000000..7ad78fd5 --- /dev/null +++ b/docs/reports/ns-16/sources/source-3.html @@ -0,0 +1,146 @@ + + + + + + + + app Coverage Report > NoteMapperKt + + + + + + +
+ + +

Coverage Summary for Class: NoteMapperKt (com.stslex93.notes.feature.edit.ui.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/86) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.ui.model
+ 
+ import com.stslex93.notes.feature.edit.domain.model.LabelDomain
+ import com.stslex93.notes.feature.edit.domain.model.NoteDomainModel
+ import kotlinx.collections.immutable.toImmutableSet
+ 
+ fun NoteDomainModel.toPresentation(): Note = Note(
+     uuid = id,
+     title = title,
+     content = content,
+     timestamp = timestamp,
+     labels = labels.map { it.toPresentation() }.toImmutableSet()
+ )
+ 
+ fun Note.toDomain(): NoteDomainModel = NoteDomainModel(
+     id = uuid,
+     title = title,
+     content = content,
+     timestamp = timestamp,
+     labels = labels.map { it.toDomain() }.toSet()
+ )
+ 
+ fun LabelDomain.toPresentation() = Label(uuid, title)
+ 
+ fun Label.toDomain() = LabelDomain(uuid, title)
+
+
+
+ + + + + + diff --git a/docs/reports/ns-17/index.html b/docs/reports/ns-17/index.html new file mode 100644 index 00000000..ef1dd890 --- /dev/null +++ b/docs/reports/ns-17/index.html @@ -0,0 +1,234 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.store + + 0% + + + (0/8) + + + + 0% + + + (0/18) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/271) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStore + + 0% + + + (0/5) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
EditStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-17/index_SORT_BY_BLOCK.html b/docs/reports/ns-17/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..5c68ac0d --- /dev/null +++ b/docs/reports/ns-17/index_SORT_BY_BLOCK.html @@ -0,0 +1,234 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.store + + 0% + + + (0/8) + + + + 0% + + + (0/18) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/271) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStore + + 0% + + + (0/5) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
EditStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-17/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-17/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..87df45a2 --- /dev/null +++ b/docs/reports/ns-17/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,234 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.store + + 0% + + + (0/8) + + + + 0% + + + (0/18) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/271) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
EditStore + + 0% + + + (0/5) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-17/index_SORT_BY_CLASS.html b/docs/reports/ns-17/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..e0321a16 --- /dev/null +++ b/docs/reports/ns-17/index_SORT_BY_CLASS.html @@ -0,0 +1,234 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.store + + 0% + + + (0/8) + + + + 0% + + + (0/18) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/271) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStore + + 0% + + + (0/5) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
EditStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-17/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-17/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..d02c8d1e --- /dev/null +++ b/docs/reports/ns-17/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,234 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.store + + 0% + + + (0/8) + + + + 0% + + + (0/18) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/271) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
EditStore + + 0% + + + (0/5) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-17/index_SORT_BY_LINE.html b/docs/reports/ns-17/index_SORT_BY_LINE.html new file mode 100644 index 00000000..c0f06c56 --- /dev/null +++ b/docs/reports/ns-17/index_SORT_BY_LINE.html @@ -0,0 +1,234 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.store + + 0% + + + (0/8) + + + + 0% + + + (0/18) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/271) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStore + + 0% + + + (0/5) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
EditStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-17/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-17/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..41314d42 --- /dev/null +++ b/docs/reports/ns-17/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,234 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.store + + 0% + + + (0/8) + + + + 0% + + + (0/18) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/271) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
EditStore + + 0% + + + (0/5) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-17/index_SORT_BY_METHOD.html b/docs/reports/ns-17/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..26e954c0 --- /dev/null +++ b/docs/reports/ns-17/index_SORT_BY_METHOD.html @@ -0,0 +1,234 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.store + + 0% + + + (0/8) + + + + 0% + + + (0/18) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/271) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStore + + 0% + + + (0/5) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
EditStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-17/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-17/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..6b52bd8f --- /dev/null +++ b/docs/reports/ns-17/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,234 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.store + + 0% + + + (0/8) + + + + 0% + + + (0/18) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/271) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
EditStore + + 0% + + + (0/5) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-17/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-17/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..426085de --- /dev/null +++ b/docs/reports/ns-17/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,234 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.store + + 0% + + + (0/8) + + + + 0% + + + (0/18) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/271) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
EditStore + + 0% + + + (0/5) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-17/index_SORT_BY_STATEMENT.html b/docs/reports/ns-17/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..64f939c3 --- /dev/null +++ b/docs/reports/ns-17/index_SORT_BY_STATEMENT.html @@ -0,0 +1,234 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.store + + 0% + + + (0/8) + + + + 0% + + + (0/18) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/271) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStore + + 0% + + + (0/5) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
EditStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-17/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-17/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..b490c72a --- /dev/null +++ b/docs/reports/ns-17/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,234 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit.ui.store + + 0% + + + (0/8) + + + + 0% + + + (0/18) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/271) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
EditStore + + 0% + + + (0/5) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-17/sources/source-1.html b/docs/reports/ns-17/sources/source-1.html new file mode 100644 index 00000000..beee625f --- /dev/null +++ b/docs/reports/ns-17/sources/source-1.html @@ -0,0 +1,272 @@ + + + + + + + + app Coverage Report > EditStore + + + + + + +
+ + +

Coverage Summary for Class: EditStore (com.stslex93.notes.feature.edit.ui.store)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStore$Action +
EditStore$Action$Init + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
EditStore$Action$InputContent + + 0% + + + (0/1) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/7) + +
EditStore$Action$InputTitle + + 0% + + + (0/1) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/7) + +
EditStore$Action$SaveNote + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/2) + +
EditStore$Event +
EditStore$State + + 0% + + + (0/3) + + + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/44) + +
EditStore$State$Companion +
Total + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/72) + +
+ +
+
+ + Source code is not available
+
+ + + + + + diff --git a/docs/reports/ns-17/sources/source-2.html b/docs/reports/ns-17/sources/source-2.html new file mode 100644 index 00000000..9480a0fa --- /dev/null +++ b/docs/reports/ns-17/sources/source-2.html @@ -0,0 +1,298 @@ + + + + + + + + app Coverage Report > EditStoreImpl + + + + + + +
+ + +

Coverage Summary for Class: EditStoreImpl (com.stslex93.notes.feature.edit.ui.store)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditStoreImpl + + 0% + + + (0/8) + + + + 0% + + + (0/14) + + + + 0% + + + (0/31) + + + + 0% + + + (0/157) + +
EditStoreImpl$initStore$1 + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/9) + +
EditStoreImpl$onActionSaveNote$1 + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/33) + +
Total + + 0% + + + (0/11) + + + + 0% + + + (0/14) + + + + 0% + + + (0/39) + + + + 0% + + + (0/199) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit.ui.store
+ 
+ import com.stslex93.notes.core.ui.base.store.BaseStoreImpl
+ import com.stslex93.notes.feature.edit.domain.interactor.NoteEditInteractor
+ import com.stslex93.notes.feature.edit.ui.model.Note
+ import com.stslex93.notes.feature.edit.ui.model.toDomain
+ import com.stslex93.notes.feature.edit.ui.model.toPresentation
+ import com.stslex93.notes.feature.edit.ui.store.EditStore.Action
+ import com.stslex93.notes.feature.edit.ui.store.EditStore.Event
+ import com.stslex93.notes.feature.edit.ui.store.EditStore.State
+ import kotlinx.collections.immutable.persistentSetOf
+ import kotlinx.coroutines.Dispatchers
+ import kotlinx.coroutines.flow.MutableStateFlow
+ import kotlinx.coroutines.flow.flowOn
+ import kotlinx.coroutines.flow.launchIn
+ import kotlinx.coroutines.flow.onEach
+ import kotlinx.coroutines.launch
+ import javax.inject.Inject
+ 
+ class EditStoreImpl @Inject constructor(
+     private val interactor: NoteEditInteractor
+ ) : EditStore, BaseStoreImpl<State, Event, Action>() {
+ 
+     override val initialState: State = State(
+         note = Note(
+             uuid = 0,
+             title = "",
+             content = "",
+             labels = persistentSetOf(),
+             timestamp = System.currentTimeMillis()
+         )
+     )
+ 
+     override val state: MutableStateFlow<State> = MutableStateFlow(initialState)
+ 
+     override fun processAction(action: Action) {
+         when (action) {
+             is Action.Init -> initStore(action)
+             is Action.InputContent -> onActionInputContent(action)
+             is Action.InputTitle -> onActionInputTitle(action)
+             is Action.SaveNote -> onActionSaveNote()
+         }
+     }
+ 
+     private fun onActionSaveNote() {
+         val note = state.value.note
+         if (note.title.isBlank() && note.content.isBlank()) return
+         scope.launch(Dispatchers.IO) {
+             interactor.insert(
+                 note.copy(
+                     title = note.title.trimEnd(),
+                     content = note.content.trimEnd()
+                 ).toDomain()
+             )
+         }
+     }
+ 
+     private fun onActionInputTitle(action: Action.InputTitle) {
+         updateState { currentState ->
+             currentState.copy(
+                 note = currentState.note.copy(
+                     title = action.title
+                 )
+             )
+         }
+     }
+ 
+     private fun onActionInputContent(action: Action.InputContent) {
+         updateState { currentState ->
+             currentState.copy(
+                 note = currentState.note.copy(
+                     content = action.content
+                 )
+             )
+         }
+     }
+ 
+     private fun initStore(action: Action.Init) {
+         if (action.isEdit.not() || action.id <= -1) return
+         interactor.getNote(action.id)
+             .onEach { note ->
+                 updateState { currentState ->
+                     currentState.copy(
+                         note = note.toPresentation()
+                     )
+                 }
+             }
+             .flowOn(Dispatchers.IO)
+             .launchIn(scope)
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-18/index.html b/docs/reports/ns-18/index.html new file mode 100644 index 00000000..22d23145 --- /dev/null +++ b/docs/reports/ns-18/index.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-18/index_SORT_BY_BLOCK.html b/docs/reports/ns-18/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..0d8b7865 --- /dev/null +++ b/docs/reports/ns-18/index_SORT_BY_BLOCK.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-18/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-18/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..13d61832 --- /dev/null +++ b/docs/reports/ns-18/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-18/index_SORT_BY_CLASS.html b/docs/reports/ns-18/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..0ada015f --- /dev/null +++ b/docs/reports/ns-18/index_SORT_BY_CLASS.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-18/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-18/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..544e18bc --- /dev/null +++ b/docs/reports/ns-18/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-18/index_SORT_BY_LINE.html b/docs/reports/ns-18/index_SORT_BY_LINE.html new file mode 100644 index 00000000..6559bb28 --- /dev/null +++ b/docs/reports/ns-18/index_SORT_BY_LINE.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-18/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-18/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..3494da83 --- /dev/null +++ b/docs/reports/ns-18/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-18/index_SORT_BY_METHOD.html b/docs/reports/ns-18/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..a5634ce3 --- /dev/null +++ b/docs/reports/ns-18/index_SORT_BY_METHOD.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-18/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-18/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..b1179a03 --- /dev/null +++ b/docs/reports/ns-18/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-18/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-18/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..39b8f75d --- /dev/null +++ b/docs/reports/ns-18/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-18/index_SORT_BY_STATEMENT.html b/docs/reports/ns-18/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..f82e9692 --- /dev/null +++ b/docs/reports/ns-18/index_SORT_BY_STATEMENT.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-18/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-18/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..6dcda75e --- /dev/null +++ b/docs/reports/ns-18/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-18/sources/source-1.html b/docs/reports/ns-18/sources/source-1.html new file mode 100644 index 00000000..44c659a7 --- /dev/null +++ b/docs/reports/ns-18/sources/source-1.html @@ -0,0 +1,252 @@ + + + + + + + + app Coverage Report > EditLabelInteractorImpl + + + + + + +
+ + +

Coverage Summary for Class: EditLabelInteractorImpl (com.stslex93.notes.feature.edit_label.domain.interactor)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelInteractorImpl + + 0% + + + (0/4) + + + + + 0% + + + (0/23) + + + + 0% + + + (0/300) + +
EditLabelInteractorImpl$addLabel$1 +
EditLabelInteractorImpl$createLabelAndAdd$1 +
EditLabelInteractorImpl$searchLabels$$inlined$map$1 + + 0% + + + (0/2) + + +
EditLabelInteractorImpl$searchLabels$$inlined$map$1$2 + + 0% + + + (0/1) + + +
EditLabelInteractorImpl$searchLabels$$inlined$map$1$2$1 +
EditLabelInteractorImpl$searchLabels$1$1 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/7) + +
Total + + 0% + + + (0/8) + + + + + 0% + + + (0/24) + + + + 0% + + + (0/307) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.domain.interactor
+ 
+ import androidx.paging.PagingData
+ import androidx.paging.map
+ import com.stslex93.notes.core.label.repository.LabelRepository
+ import com.stslex93.notes.core.notes.repository.NoteRepository
+ import com.stslex93.notes.feature.edit_label.domain.model.LabelDomain
+ import com.stslex93.notes.feature.edit_label.domain.model.toDomain
+ import com.stslex93.notes.feature.edit_label.ui.model.toData
+ import kotlinx.coroutines.flow.Flow
+ import kotlinx.coroutines.flow.map
+ import javax.inject.Inject
+ 
+ class EditLabelInteractorImpl @Inject constructor(
+     private val noteRepository: NoteRepository,
+     private val labelRepository: LabelRepository
+ ) : EditLabelInteractor {
+ 
+     override fun searchLabels(
+         query: String
+     ): Flow<PagingData<LabelDomain>> = labelRepository
+         .searchLabels(query)
+         .map { pagingData ->
+             pagingData.map { it.toDomain() }
+         }
+ 
+     override suspend fun createLabelAndAdd(noteIds: Set<Int>, label: LabelDomain) {
+         labelRepository.addLabel(label.toData())
+         noteIds.forEach { id ->
+             val note = noteRepository.getNote(id)
+             val newNote = note.copy(
+                 labelUuids = note.labelUuids.toMutableSet().apply {
+                     add(label.uuid)
+                 }
+             )
+             noteRepository.insert(newNote)
+         }
+     }
+ 
+     override suspend fun addLabel(noteIds: Set<Int>, labelUuid: String) {
+         noteIds.forEach { id ->
+             val note = noteRepository.getNote(id)
+             val newNote = note.copy(
+                 labelUuids = note.labelUuids.toMutableSet().apply {
+                     add(labelUuid)
+                 }
+             )
+             noteRepository.insert(newNote)
+         }
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-18/sources/source-2.html b/docs/reports/ns-18/sources/source-2.html new file mode 100644 index 00000000..107c8ec5 --- /dev/null +++ b/docs/reports/ns-18/sources/source-2.html @@ -0,0 +1,93 @@ + + + + + + + + app Coverage Report > EditLabelInteractor + + + + + + +
+ + +

Coverage Summary for Class: EditLabelInteractor (com.stslex93.notes.feature.edit_label.domain.interactor)

+ + + + + + + + + + +
Class + Branch, % +
EditLabelInteractor +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.domain.interactor
+ 
+ import androidx.paging.PagingData
+ import com.stslex93.notes.feature.edit_label.domain.model.LabelDomain
+ import kotlinx.coroutines.flow.Flow
+ 
+ interface EditLabelInteractor {
+ 
+     fun searchLabels(query: String): Flow<PagingData<LabelDomain>>
+ 
+     suspend fun createLabelAndAdd(
+         noteIds: Set<Int>,
+         label: LabelDomain
+     )
+ 
+     suspend fun addLabel(
+         noteIds: Set<Int>,
+         labelUuid: String
+     )
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-19/index.html b/docs/reports/ns-19/index.html new file mode 100644 index 00000000..67ff81cf --- /dev/null +++ b/docs/reports/ns-19/index.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-19/index_SORT_BY_BLOCK.html b/docs/reports/ns-19/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..85a462e1 --- /dev/null +++ b/docs/reports/ns-19/index_SORT_BY_BLOCK.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-19/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-19/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..0c84e603 --- /dev/null +++ b/docs/reports/ns-19/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-19/index_SORT_BY_CLASS.html b/docs/reports/ns-19/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..b86cf35d --- /dev/null +++ b/docs/reports/ns-19/index_SORT_BY_CLASS.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-19/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-19/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..41e9388a --- /dev/null +++ b/docs/reports/ns-19/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-19/index_SORT_BY_LINE.html b/docs/reports/ns-19/index_SORT_BY_LINE.html new file mode 100644 index 00000000..8c6d35e5 --- /dev/null +++ b/docs/reports/ns-19/index_SORT_BY_LINE.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-19/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-19/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..a658eb4b --- /dev/null +++ b/docs/reports/ns-19/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-19/index_SORT_BY_METHOD.html b/docs/reports/ns-19/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..1133e273 --- /dev/null +++ b/docs/reports/ns-19/index_SORT_BY_METHOD.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-19/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-19/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..75ab79d3 --- /dev/null +++ b/docs/reports/ns-19/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-19/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-19/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..bbc410b9 --- /dev/null +++ b/docs/reports/ns-19/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-19/index_SORT_BY_STATEMENT.html b/docs/reports/ns-19/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..5d57fc97 --- /dev/null +++ b/docs/reports/ns-19/index_SORT_BY_STATEMENT.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-19/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-19/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..c2b7407e --- /dev/null +++ b/docs/reports/ns-19/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-19/sources/source-1.html b/docs/reports/ns-19/sources/source-1.html new file mode 100644 index 00000000..9386011d --- /dev/null +++ b/docs/reports/ns-19/sources/source-1.html @@ -0,0 +1,127 @@ + + + + + + + + app Coverage Report > LabelDomain + + + + + + +
+ + +

Coverage Summary for Class: LabelDomain (com.stslex93.notes.feature.edit_label.domain.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.domain.model
+ 
+ data class LabelDomain(
+     val uuid: String,
+     val title: String,
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-19/sources/source-2.html b/docs/reports/ns-19/sources/source-2.html new file mode 100644 index 00000000..925b3dd3 --- /dev/null +++ b/docs/reports/ns-19/sources/source-2.html @@ -0,0 +1,130 @@ + + + + + + + + app Coverage Report > NoteDomain + + + + + + +
+ + +

Coverage Summary for Class: NoteDomain (com.stslex93.notes.feature.edit_label.domain.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.domain.model
+ 
+ data class NoteDomain(
+     val id: Int = 0,
+     val title: String,
+     val content: String,
+     val timestamp: Long,
+     val labels: Set<LabelDomain>
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-19/sources/source-3.html b/docs/reports/ns-19/sources/source-3.html new file mode 100644 index 00000000..c50a1b48 --- /dev/null +++ b/docs/reports/ns-19/sources/source-3.html @@ -0,0 +1,138 @@ + + + + + + + + app Coverage Report > NoteDomainMapperKt + + + + + + +
+ + +

Coverage Summary for Class: NoteDomainMapperKt (com.stslex93.notes.feature.edit_label.domain.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.domain.model
+ 
+ import com.stslex93.notes.core.label.model.LabelDataModel
+ import com.stslex93.notes.core.notes.model.NoteDataModel
+ 
+ fun NoteDataModel.toDomain(labels: Set<LabelDomain>) = NoteDomain(
+     id = id,
+     title = title,
+     content = content,
+     timestamp = timestamp,
+     labels = labels
+ )
+ 
+ fun LabelDataModel.toDomain(): LabelDomain = LabelDomain(
+     uuid = uuid,
+     title = title,
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-1a/index.html b/docs/reports/ns-1a/index.html new file mode 100644 index 00000000..2ab41a68 --- /dev/null +++ b/docs/reports/ns-1a/index.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.graph + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.graph

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.graph + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1a/index_SORT_BY_BLOCK.html b/docs/reports/ns-1a/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..727eb41f --- /dev/null +++ b/docs/reports/ns-1a/index_SORT_BY_BLOCK.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.graph + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.graph

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.graph + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1a/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-1a/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..740f8f78 --- /dev/null +++ b/docs/reports/ns-1a/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.graph + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.graph

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.graph + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1a/index_SORT_BY_CLASS.html b/docs/reports/ns-1a/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..8a4a36b3 --- /dev/null +++ b/docs/reports/ns-1a/index_SORT_BY_CLASS.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.graph + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.graph

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.graph + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1a/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-1a/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..db72be6c --- /dev/null +++ b/docs/reports/ns-1a/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.graph + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.graph

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.graph + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1a/index_SORT_BY_LINE.html b/docs/reports/ns-1a/index_SORT_BY_LINE.html new file mode 100644 index 00000000..5e743191 --- /dev/null +++ b/docs/reports/ns-1a/index_SORT_BY_LINE.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.graph + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.graph

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.graph + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1a/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-1a/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..eb65134e --- /dev/null +++ b/docs/reports/ns-1a/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.graph + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.graph

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.graph + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1a/index_SORT_BY_METHOD.html b/docs/reports/ns-1a/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..b4c2cfdb --- /dev/null +++ b/docs/reports/ns-1a/index_SORT_BY_METHOD.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.graph + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.graph

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.graph + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1a/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-1a/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..74f562ae --- /dev/null +++ b/docs/reports/ns-1a/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.graph + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.graph

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.graph + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1a/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-1a/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..519b4a1a --- /dev/null +++ b/docs/reports/ns-1a/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.graph + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.graph

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.graph + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1a/index_SORT_BY_STATEMENT.html b/docs/reports/ns-1a/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..26e31fa9 --- /dev/null +++ b/docs/reports/ns-1a/index_SORT_BY_STATEMENT.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.graph + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.graph

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.graph + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1a/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-1a/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..0d24da23 --- /dev/null +++ b/docs/reports/ns-1a/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.graph + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.graph

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.graph + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1a/sources/source-1.html b/docs/reports/ns-1a/sources/source-1.html new file mode 100644 index 00000000..3b0191ad --- /dev/null +++ b/docs/reports/ns-1a/sources/source-1.html @@ -0,0 +1,269 @@ + + + + + + + + app Coverage Report > EditLabelGraphKt + + + + + + +
+ + +

Coverage Summary for Class: EditLabelGraphKt (com.stslex93.notes.feature.edit_label.navigation.graph)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelGraphKt + + 0% + + + (0/3) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/24) + +
EditLabelGraphKt$editLabelGraph$1$1$1 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/9) + +
EditLabelGraphKt$editLabelGraph$1$2$1 + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + 0% + + + (0/19) + +
Total + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/52) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.navigation.graph
+ 
+ import androidx.compose.runtime.LaunchedEffect
+ import androidx.compose.runtime.collectAsState
+ import androidx.compose.runtime.getValue
+ import androidx.compose.runtime.remember
+ import androidx.compose.ui.Modifier
+ import androidx.navigation.NavGraphBuilder
+ import androidx.navigation.compose.composable
+ import com.stslex93.notes.core.navigation.model.AppArguments
+ import com.stslex93.notes.core.navigation.model.AppDestination
+ import com.stslex93.notes.core.navigation.utils.NavExt.composableArguments
+ import com.stslex93.notes.core.navigation.utils.NavExt.parseArguments
+ import com.stslex93.notes.core.ui.Extensions.CollectAsEvent
+ import com.stslex93.notes.feature.edit_label.di.initComponent
+ import com.stslex93.notes.feature.edit_label.ui.EditLabelScreen
+ import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore
+ 
+ fun NavGraphBuilder.editLabelGraph(
+     modifier: Modifier = Modifier,
+ ) {
+     composable(
+         route = AppDestination.LABEL_EDIT.navigationRoute,
+         arguments = AppDestination.LABEL_EDIT.composableArguments
+     ) { navBackStackEntry ->
+ 
+         val arguments = AppDestination.LABEL_EDIT
+             .parseArguments(navBackStackEntry)
+             .firstOrNull()
+             .orEmpty()
+ 
+         val viewModel = initComponent(arguments)
+         val noteIds = arguments
+             .split(AppArguments.LIST_SEPARATOR)
+             .map {
+                 it.toInt()
+             }
+ 
+         LaunchedEffect(arguments) {
+             viewModel.sendAction(EditLabelStore.Action.Init(noteIds))
+         }
+ 
+         viewModel.event.CollectAsEvent { event ->
+             when (event) {
+                 is EditLabelStore.Event.Navigation -> viewModel.processNavigationEvent(event)
+                 EditLabelStore.Event.SnackbarError -> {
+                     //TODO()
+                 }
+             }
+         }
+ 
+         val screenState by remember {
+             viewModel.state
+         }.collectAsState()
+ 
+         EditLabelScreen(
+             modifier = modifier,
+             state = screenState,
+             processAction = viewModel::sendAction
+         )
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-1b/index.html b/docs/reports/ns-1b/index.html new file mode 100644 index 00000000..3f873e7f --- /dev/null +++ b/docs/reports/ns-1b/index.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.router + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.router

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.router + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1b/index_SORT_BY_BLOCK.html b/docs/reports/ns-1b/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..a8f32d1c --- /dev/null +++ b/docs/reports/ns-1b/index_SORT_BY_BLOCK.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.router + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.router

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.router + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1b/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-1b/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..4cc0bb37 --- /dev/null +++ b/docs/reports/ns-1b/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.router + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.router

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.router + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1b/index_SORT_BY_CLASS.html b/docs/reports/ns-1b/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..7f575295 --- /dev/null +++ b/docs/reports/ns-1b/index_SORT_BY_CLASS.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.router + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.router

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.router + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1b/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-1b/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..4122e09c --- /dev/null +++ b/docs/reports/ns-1b/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.router + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.router

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.router + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1b/index_SORT_BY_LINE.html b/docs/reports/ns-1b/index_SORT_BY_LINE.html new file mode 100644 index 00000000..1e185bb5 --- /dev/null +++ b/docs/reports/ns-1b/index_SORT_BY_LINE.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.router + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.router

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.router + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1b/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-1b/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..b5f1e496 --- /dev/null +++ b/docs/reports/ns-1b/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.router + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.router

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.router + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1b/index_SORT_BY_METHOD.html b/docs/reports/ns-1b/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..2170a5ff --- /dev/null +++ b/docs/reports/ns-1b/index_SORT_BY_METHOD.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.router + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.router

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.router + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1b/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-1b/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..ccac62f1 --- /dev/null +++ b/docs/reports/ns-1b/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.router + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.router

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.router + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1b/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-1b/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..ae2581ad --- /dev/null +++ b/docs/reports/ns-1b/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.router + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.router

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.router + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1b/index_SORT_BY_STATEMENT.html b/docs/reports/ns-1b/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..3de44a00 --- /dev/null +++ b/docs/reports/ns-1b/index_SORT_BY_STATEMENT.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.router + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.router

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.router + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1b/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-1b/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..ebd6cfc6 --- /dev/null +++ b/docs/reports/ns-1b/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.navigation.router + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.navigation.router

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.navigation.router + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1b/sources/source-1.html b/docs/reports/ns-1b/sources/source-1.html new file mode 100644 index 00000000..cb91ff59 --- /dev/null +++ b/docs/reports/ns-1b/sources/source-1.html @@ -0,0 +1,135 @@ + + + + + + + + app Coverage Report > EditLabelRouterImpl + + + + + + +
+ + +

Coverage Summary for Class: EditLabelRouterImpl (com.stslex93.notes.feature.edit_label.navigation.router)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.navigation.router
+ 
+ import com.stslex93.notes.core.navigation.model.NavigationScreen
+ import com.stslex93.notes.core.ui.di.Navigator
+ import javax.inject.Inject
+ 
+ class EditLabelRouterImpl @Inject constructor(
+     private val navigator: Navigator
+ ) : EditLabelRouter {
+ 
+     override fun popBackStack() {
+         navigator.invoke(NavigationScreen.PopBackStack)
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-1b/sources/source-2.html b/docs/reports/ns-1b/sources/source-2.html new file mode 100644 index 00000000..5719e5a7 --- /dev/null +++ b/docs/reports/ns-1b/sources/source-2.html @@ -0,0 +1,79 @@ + + + + + + + + app Coverage Report > EditLabelRouter + + + + + + +
+ + +

Coverage Summary for Class: EditLabelRouter (com.stslex93.notes.feature.edit_label.navigation.router)

+ + + + + + + + + + +
Class + Branch, % +
EditLabelRouter +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.navigation.router
+ 
+ interface EditLabelRouter {
+ 
+     fun popBackStack()
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-1c/index.html b/docs/reports/ns-1c/index.html new file mode 100644 index 00000000..9e05175a --- /dev/null +++ b/docs/reports/ns-1c/index.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui + + 0% + + + (0/2) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1c/index_SORT_BY_BLOCK.html b/docs/reports/ns-1c/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..5285072b --- /dev/null +++ b/docs/reports/ns-1c/index_SORT_BY_BLOCK.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui + + 0% + + + (0/2) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1c/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-1c/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..4bc571f1 --- /dev/null +++ b/docs/reports/ns-1c/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui + + 0% + + + (0/2) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1c/index_SORT_BY_CLASS.html b/docs/reports/ns-1c/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..d65286f3 --- /dev/null +++ b/docs/reports/ns-1c/index_SORT_BY_CLASS.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui + + 0% + + + (0/2) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1c/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-1c/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..1411e6ee --- /dev/null +++ b/docs/reports/ns-1c/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui + + 0% + + + (0/2) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1c/index_SORT_BY_LINE.html b/docs/reports/ns-1c/index_SORT_BY_LINE.html new file mode 100644 index 00000000..2ffb184d --- /dev/null +++ b/docs/reports/ns-1c/index_SORT_BY_LINE.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui + + 0% + + + (0/2) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1c/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-1c/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..2cb7ac7a --- /dev/null +++ b/docs/reports/ns-1c/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui + + 0% + + + (0/2) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1c/index_SORT_BY_METHOD.html b/docs/reports/ns-1c/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..7d2b9b53 --- /dev/null +++ b/docs/reports/ns-1c/index_SORT_BY_METHOD.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui + + 0% + + + (0/2) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1c/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-1c/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..e9a0625f --- /dev/null +++ b/docs/reports/ns-1c/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui + + 0% + + + (0/2) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1c/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-1c/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..72f4f3d7 --- /dev/null +++ b/docs/reports/ns-1c/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui + + 0% + + + (0/2) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1c/index_SORT_BY_STATEMENT.html b/docs/reports/ns-1c/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..76c35109 --- /dev/null +++ b/docs/reports/ns-1c/index_SORT_BY_STATEMENT.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui + + 0% + + + (0/2) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1c/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-1c/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..4d72d373 --- /dev/null +++ b/docs/reports/ns-1c/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui + + 0% + + + (0/2) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/27) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1c/sources/source-1.html b/docs/reports/ns-1c/sources/source-1.html new file mode 100644 index 00000000..ec3fc152 --- /dev/null +++ b/docs/reports/ns-1c/sources/source-1.html @@ -0,0 +1,134 @@ + + + + + + + + app Coverage Report > ComposableSingletons + + + + + + +
+ + +

Coverage Summary for Class: ComposableSingletons (com.stslex93.notes.feature.edit_label.ui)

+ + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons$EditLabelScreenKt + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
Total + + 0% + + + (0/5) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/12) + +
+ +
+
+ + Source code is not available
+
+ + + + + + diff --git a/docs/reports/ns-1c/sources/source-2.html b/docs/reports/ns-1c/sources/source-2.html new file mode 100644 index 00000000..64a24449 --- /dev/null +++ b/docs/reports/ns-1c/sources/source-2.html @@ -0,0 +1,143 @@ + + + + + + + + app Coverage Report > EditLabelViewModel + + + + + + +
+ + +

Coverage Summary for Class: EditLabelViewModel (com.stslex93.notes.feature.edit_label.ui)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/15) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.ui
+ 
+ import com.stslex93.notes.core.ui.base.BaseViewModel
+ import com.stslex93.notes.feature.edit_label.navigation.router.EditLabelRouter
+ import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore
+ import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.Action
+ import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.Event
+ import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.Event.Navigation
+ import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.State
+ import javax.inject.Inject
+ 
+ class EditLabelViewModel @Inject constructor(
+     store: EditLabelStore,
+     private val router: EditLabelRouter
+ ) : BaseViewModel<State, Event, Action>(store) {
+ 
+     fun processNavigationEvent(event: Navigation) {
+         when (event) {
+             Navigation.OnBackPressed -> router.popBackStack()
+         }
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-1c/sources/source-3.html b/docs/reports/ns-1c/sources/source-3.html new file mode 100644 index 00000000..fa9bd452 --- /dev/null +++ b/docs/reports/ns-1c/sources/source-3.html @@ -0,0 +1,273 @@ + + + + + + + + app Coverage Report > EditLabelScreenKt + + + + + + +
+ + +

Coverage Summary for Class: EditLabelScreenKt (com.stslex93.notes.feature.edit_label.ui)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
EditLabelScreenKt + + 0% + + + (0/3) + + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.ui
+ 
+ import androidx.compose.animation.AnimatedVisibility
+ import androidx.compose.foundation.background
+ import androidx.compose.foundation.layout.Column
+ import androidx.compose.foundation.layout.PaddingValues
+ import androidx.compose.foundation.layout.Row
+ import androidx.compose.foundation.layout.Spacer
+ import androidx.compose.foundation.layout.fillMaxSize
+ import androidx.compose.foundation.layout.fillMaxWidth
+ import androidx.compose.foundation.layout.height
+ import androidx.compose.foundation.layout.padding
+ import androidx.compose.foundation.layout.systemBarsPadding
+ import androidx.compose.foundation.layout.width
+ import androidx.compose.foundation.lazy.LazyColumn
+ import androidx.compose.material.Text
+ import androidx.compose.material.icons.Icons
+ import androidx.compose.material.icons.automirrored.filled.ArrowBack
+ import androidx.compose.material.icons.filled.Add
+ import androidx.compose.material3.ElevatedButton
+ import androidx.compose.material3.ExperimentalMaterial3Api
+ import androidx.compose.material3.Icon
+ import androidx.compose.material3.IconButton
+ import androidx.compose.material3.MaterialTheme
+ import androidx.compose.material3.OutlinedCard
+ import androidx.compose.material3.TextField
+ import androidx.compose.runtime.Composable
+ import androidx.compose.runtime.remember
+ import androidx.compose.ui.Modifier
+ import androidx.compose.ui.tooling.preview.Preview
+ import androidx.paging.PagingData
+ import androidx.paging.compose.collectAsLazyPagingItems
+ import androidx.paging.compose.itemKey
+ import com.stslex93.notes.core.ui.theme.AppDimens
+ import com.stslex93.notes.core.ui.theme.AppTheme
+ import com.stslex93.notes.feature.edit_label.ui.model.Label
+ import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.Action
+ import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.State
+ import kotlinx.collections.immutable.persistentSetOf
+ import kotlinx.coroutines.flow.MutableStateFlow
+ 
+ @OptIn(ExperimentalMaterial3Api::class)
+ @Composable
+ fun EditLabelScreen(
+     state: State,
+     processAction: (Action) -> Unit,
+     modifier: Modifier = Modifier
+ ) {
+     val labels = remember {
+         state.labels()
+     }.collectAsLazyPagingItems()
+ 
+     Column(
+         modifier = modifier
+             .fillMaxSize()
+             .systemBarsPadding()
+             .background(MaterialTheme.colorScheme.background)
+             .padding(AppDimens.Padding.medium)
+     ) {
+         EditLabelToolbar(
+             query = state.query,
+             onQueryChange = { value ->
+                 processAction(Action.QueryInput(value))
+             },
+             onBackPressed = {
+                 processAction(Action.BackPressed)
+             }
+         )
+         Spacer(modifier = Modifier.height(AppDimens.Padding.normal))
+ 
+         AnimatedVisibility(visible = state.query.isNotBlank()) {
+             ElevatedButton(
+                 modifier = Modifier
+                     .fillMaxWidth()
+                     .padding(AppDimens.Padding.medium),
+                 onClick = {
+                     processAction(Action.AddLabelClicked)
+                 },
+                 contentPadding = PaddingValues(AppDimens.Padding.normal)
+             ) {
+                 Icon(
+                     imageVector = Icons.Default.Add,
+                     contentDescription = "add label"
+                 )
+                 Spacer(modifier = Modifier.width(AppDimens.Padding.small))
+                 Text(
+                     text = "Save: ${state.query}",
+                     style = MaterialTheme.typography.titleMedium,
+                     color = MaterialTheme.colorScheme.onSurface
+                 )
+             }
+         }
+ 
+         LazyColumn(
+             modifier = Modifier
+                 .weight(1f)
+                 .padding(AppDimens.Padding.medium)
+         ) {
+             items(
+                 count = labels.itemCount,
+                 key = labels.itemKey {
+                     it.uuid
+                 },
+             ) { index ->
+                 labels[index]?.let { item ->
+                     OutlinedCard(
+                         modifier = Modifier
+                             .fillMaxWidth()
+                             .padding(
+                                 vertical = AppDimens.Padding.medium
+                             ),
+                         onClick = {
+                             processAction(Action.OnLabelSelected(item.uuid))
+                         }
+                     ) {
+                         Text(
+                             modifier = Modifier
+                                 .padding(AppDimens.Padding.medium),
+                             text = item.title,
+                             maxLines = 1,
+                             style = MaterialTheme.typography.titleMedium,
+                             color = MaterialTheme.colorScheme.onSurface
+                         )
+                     }
+                 }
+             }
+         }
+     }
+ }
+ 
+ @Composable
+ fun EditLabelToolbar(
+     query: String,
+     onQueryChange: (String) -> Unit,
+     onBackPressed: () -> Unit,
+     modifier: Modifier = Modifier,
+ ) {
+     Row(
+         modifier = modifier
+             .fillMaxWidth()
+             .padding(AppDimens.Padding.medium)
+             .background(MaterialTheme.colorScheme.surface)
+     ) {
+         IconButton(
+             onClick = onBackPressed
+         ) {
+             Icon(
+                 imageVector = Icons.AutoMirrored.Filled.ArrowBack,
+                 contentDescription = "back",
+                 tint = MaterialTheme.colorScheme.onSurface
+             )
+         }
+         Spacer(modifier = Modifier.width(AppDimens.Padding.medium))
+         TextField(
+             modifier = Modifier.weight(1f),
+             value = query,
+             onValueChange = { value ->
+                 if (query != value) {
+                     onQueryChange(value)
+                 }
+             },
+             maxLines = 1,
+             textStyle = MaterialTheme.typography.titleMedium,
+         )
+     }
+ }
+ 
+ @Composable
+ @Preview
+ fun EditLabelScreenPreview() {
+     AppTheme {
+         val labels = Array(10) {
+             Label(
+                 uuid = it.toString(),
+                 title = "label $it"
+             )
+         }.toList()
+         val items = MutableStateFlow(PagingData.from(labels))
+         EditLabelScreen(
+             state = State(
+                 notesIds = persistentSetOf(),
+                 query = "dfdfdfdfdf",
+                 labels = { items }
+             ),
+             processAction = {}
+         )
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-1d/index.html b/docs/reports/ns-1d/index.html new file mode 100644 index 00000000..b47c325a --- /dev/null +++ b/docs/reports/ns-1d/index.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/57) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1d/index_SORT_BY_BLOCK.html b/docs/reports/ns-1d/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..bcfce2d7 --- /dev/null +++ b/docs/reports/ns-1d/index_SORT_BY_BLOCK.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/57) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1d/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-1d/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..8e7a9736 --- /dev/null +++ b/docs/reports/ns-1d/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/57) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1d/index_SORT_BY_CLASS.html b/docs/reports/ns-1d/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..5378a89e --- /dev/null +++ b/docs/reports/ns-1d/index_SORT_BY_CLASS.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/57) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1d/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-1d/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..8355941f --- /dev/null +++ b/docs/reports/ns-1d/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/57) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1d/index_SORT_BY_LINE.html b/docs/reports/ns-1d/index_SORT_BY_LINE.html new file mode 100644 index 00000000..b2d864fc --- /dev/null +++ b/docs/reports/ns-1d/index_SORT_BY_LINE.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/57) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1d/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-1d/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..1b3db4e0 --- /dev/null +++ b/docs/reports/ns-1d/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/57) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1d/index_SORT_BY_METHOD.html b/docs/reports/ns-1d/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..732f2971 --- /dev/null +++ b/docs/reports/ns-1d/index_SORT_BY_METHOD.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/57) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1d/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-1d/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..73cab9b3 --- /dev/null +++ b/docs/reports/ns-1d/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/57) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1d/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-1d/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..a7066a41 --- /dev/null +++ b/docs/reports/ns-1d/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/57) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1d/index_SORT_BY_STATEMENT.html b/docs/reports/ns-1d/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..08c09673 --- /dev/null +++ b/docs/reports/ns-1d/index_SORT_BY_STATEMENT.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/57) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1d/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-1d/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..7a810a7c --- /dev/null +++ b/docs/reports/ns-1d/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/57) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1d/sources/source-1.html b/docs/reports/ns-1d/sources/source-1.html new file mode 100644 index 00000000..485cf325 --- /dev/null +++ b/docs/reports/ns-1d/sources/source-1.html @@ -0,0 +1,130 @@ + + + + + + + + app Coverage Report > Label + + + + + + +
+ + +

Coverage Summary for Class: Label (com.stslex93.notes.feature.edit_label.ui.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.ui.model
+ 
+ import androidx.compose.runtime.Stable
+ 
+ @Stable
+ data class Label(
+     val uuid: String,
+     val title: String,
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-1d/sources/source-2.html b/docs/reports/ns-1d/sources/source-2.html new file mode 100644 index 00000000..a8989d25 --- /dev/null +++ b/docs/reports/ns-1d/sources/source-2.html @@ -0,0 +1,134 @@ + + + + + + + + app Coverage Report > Note + + + + + + +
+ + +

Coverage Summary for Class: Note (com.stslex93.notes.feature.edit_label.ui.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.ui.model
+ 
+ import androidx.compose.runtime.Stable
+ import kotlinx.collections.immutable.ImmutableSet
+ 
+ @Stable
+ data class Note(
+     val id: Int = 0,
+     val title: String,
+     val content: String,
+     val timestamp: Long,
+     val labels: ImmutableSet<Label>
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-1d/sources/source-3.html b/docs/reports/ns-1d/sources/source-3.html new file mode 100644 index 00000000..de08c937 --- /dev/null +++ b/docs/reports/ns-1d/sources/source-3.html @@ -0,0 +1,137 @@ + + + + + + + + app Coverage Report > NoteMapperKt + + + + + + +
+ + +

Coverage Summary for Class: NoteMapperKt (com.stslex93.notes.feature.edit_label.ui.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/18) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.ui.model
+ 
+ import com.stslex93.notes.core.label.model.LabelDataModel
+ import com.stslex93.notes.feature.edit_label.domain.model.LabelDomain
+ import java.time.OffsetDateTime
+ 
+ fun LabelDomain.toUi() = Label(
+     uuid = uuid,
+     title = title,
+ )
+ 
+ fun LabelDomain.toData() = LabelDataModel(
+     uuid = uuid,
+     title = title,
+     timestamp = OffsetDateTime.now()
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-1e/index.html b/docs/reports/ns-1e/index.html new file mode 100644 index 00000000..a0df8303 --- /dev/null +++ b/docs/reports/ns-1e/index.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.store + + 0% + + + (0/12) + + + + 0% + + + (0/27) + + + + 0% + + + (0/18) + + + + 0% + + + (0/72) + + + + 0% + + + (0/436) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStore + + 0% + + + (0/8) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
EditLabelStoreImpl + + 0% + + + (0/4) + + + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1e/index_SORT_BY_BLOCK.html b/docs/reports/ns-1e/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..a287916b --- /dev/null +++ b/docs/reports/ns-1e/index_SORT_BY_BLOCK.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.store + + 0% + + + (0/12) + + + + 0% + + + (0/27) + + + + 0% + + + (0/18) + + + + 0% + + + (0/72) + + + + 0% + + + (0/436) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStore + + 0% + + + (0/8) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
EditLabelStoreImpl + + 0% + + + (0/4) + + + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1e/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-1e/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..c9bc18ba --- /dev/null +++ b/docs/reports/ns-1e/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.store + + 0% + + + (0/12) + + + + 0% + + + (0/27) + + + + 0% + + + (0/18) + + + + 0% + + + (0/72) + + + + 0% + + + (0/436) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStoreImpl + + 0% + + + (0/4) + + + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
EditLabelStore + + 0% + + + (0/8) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1e/index_SORT_BY_CLASS.html b/docs/reports/ns-1e/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..62853cd3 --- /dev/null +++ b/docs/reports/ns-1e/index_SORT_BY_CLASS.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.store + + 0% + + + (0/12) + + + + 0% + + + (0/27) + + + + 0% + + + (0/18) + + + + 0% + + + (0/72) + + + + 0% + + + (0/436) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStore + + 0% + + + (0/8) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
EditLabelStoreImpl + + 0% + + + (0/4) + + + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1e/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-1e/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..0437d6bc --- /dev/null +++ b/docs/reports/ns-1e/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.store + + 0% + + + (0/12) + + + + 0% + + + (0/27) + + + + 0% + + + (0/18) + + + + 0% + + + (0/72) + + + + 0% + + + (0/436) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStoreImpl + + 0% + + + (0/4) + + + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
EditLabelStore + + 0% + + + (0/8) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1e/index_SORT_BY_LINE.html b/docs/reports/ns-1e/index_SORT_BY_LINE.html new file mode 100644 index 00000000..78d6b9d5 --- /dev/null +++ b/docs/reports/ns-1e/index_SORT_BY_LINE.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.store + + 0% + + + (0/12) + + + + 0% + + + (0/27) + + + + 0% + + + (0/18) + + + + 0% + + + (0/72) + + + + 0% + + + (0/436) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStore + + 0% + + + (0/8) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
EditLabelStoreImpl + + 0% + + + (0/4) + + + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1e/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-1e/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..862573d3 --- /dev/null +++ b/docs/reports/ns-1e/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.store + + 0% + + + (0/12) + + + + 0% + + + (0/27) + + + + 0% + + + (0/18) + + + + 0% + + + (0/72) + + + + 0% + + + (0/436) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStoreImpl + + 0% + + + (0/4) + + + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
EditLabelStore + + 0% + + + (0/8) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1e/index_SORT_BY_METHOD.html b/docs/reports/ns-1e/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..925e9273 --- /dev/null +++ b/docs/reports/ns-1e/index_SORT_BY_METHOD.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.store + + 0% + + + (0/12) + + + + 0% + + + (0/27) + + + + 0% + + + (0/18) + + + + 0% + + + (0/72) + + + + 0% + + + (0/436) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStore + + 0% + + + (0/8) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
EditLabelStoreImpl + + 0% + + + (0/4) + + + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1e/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-1e/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..bb4f9272 --- /dev/null +++ b/docs/reports/ns-1e/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.store + + 0% + + + (0/12) + + + + 0% + + + (0/27) + + + + 0% + + + (0/18) + + + + 0% + + + (0/72) + + + + 0% + + + (0/436) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStoreImpl + + 0% + + + (0/4) + + + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
EditLabelStore + + 0% + + + (0/8) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1e/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-1e/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..115eada0 --- /dev/null +++ b/docs/reports/ns-1e/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.store + + 0% + + + (0/12) + + + + 0% + + + (0/27) + + + + 0% + + + (0/18) + + + + 0% + + + (0/72) + + + + 0% + + + (0/436) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStoreImpl + + 0% + + + (0/4) + + + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
EditLabelStore + + 0% + + + (0/8) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1e/index_SORT_BY_STATEMENT.html b/docs/reports/ns-1e/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..f3a39280 --- /dev/null +++ b/docs/reports/ns-1e/index_SORT_BY_STATEMENT.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.store + + 0% + + + (0/12) + + + + 0% + + + (0/27) + + + + 0% + + + (0/18) + + + + 0% + + + (0/72) + + + + 0% + + + (0/436) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStore + + 0% + + + (0/8) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
EditLabelStoreImpl + + 0% + + + (0/4) + + + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1e/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-1e/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..c40147ff --- /dev/null +++ b/docs/reports/ns-1e/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.edit_label.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.edit_label.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.edit_label.ui.store + + 0% + + + (0/12) + + + + 0% + + + (0/27) + + + + 0% + + + (0/18) + + + + 0% + + + (0/72) + + + + 0% + + + (0/436) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStoreImpl + + 0% + + + (0/4) + + + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
EditLabelStore + + 0% + + + (0/8) + + + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1e/sources/source-1.html b/docs/reports/ns-1e/sources/source-1.html new file mode 100644 index 00000000..05669408 --- /dev/null +++ b/docs/reports/ns-1e/sources/source-1.html @@ -0,0 +1,342 @@ + + + + + + + + app Coverage Report > EditLabelStore + + + + + + +
+ + +

Coverage Summary for Class: EditLabelStore (com.stslex93.notes.feature.edit_label.ui.store)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStore$Action +
EditLabelStore$Action$AddLabelClicked + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/2) + +
EditLabelStore$Action$BackPressed + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/2) + +
EditLabelStore$Action$Init + + 0% + + + (0/1) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/7) + +
EditLabelStore$Action$OnLabelSelected + + 0% + + + (0/1) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/7) + +
EditLabelStore$Action$QueryInput + + 0% + + + (0/1) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/7) + +
EditLabelStore$Event +
EditLabelStore$Event$Navigation +
EditLabelStore$Event$Navigation$OnBackPressed + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/2) + +
EditLabelStore$Event$SnackbarError + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/2) + +
EditLabelStore$State + + 0% + + + (0/1) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/17) + +
Total + + 0% + + + (0/8) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/46) + +
+ +
+
+ + Source code is not available
+
+ + + + + + diff --git a/docs/reports/ns-1e/sources/source-2.html b/docs/reports/ns-1e/sources/source-2.html new file mode 100644 index 00000000..3a2b671d --- /dev/null +++ b/docs/reports/ns-1e/sources/source-2.html @@ -0,0 +1,442 @@ + + + + + + + + app Coverage Report > EditLabelStoreImpl + + + + + + +
+ + +

Coverage Summary for Class: EditLabelStoreImpl (com.stslex93.notes.feature.edit_label.ui.store)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
EditLabelStoreImpl + + 0% + + + (0/9) + + + + 0% + + + (0/10) + + + + 0% + + + (0/35) + + + + 0% + + + (0/174) + +
EditLabelStoreImpl$labels$3$1 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/7) + +
EditLabelStoreImpl$onCreateClicked$1 + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + 0% + + + (0/12) + + + + 0% + + + (0/107) + +
EditLabelStoreImpl$onLabelSelected$1 + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + 0% + + + (0/10) + + + + 0% + + + (0/102) + +
EditLabelStoreImpl$special$$inlined$flatMapLatest$1 + + 0% + + + (0/1) + + +
EditLabelStoreImpl$special$$inlined$map$1 + + 0% + + + (0/2) + + +
EditLabelStoreImpl$special$$inlined$map$1$2 + + 0% + + + (0/1) + + +
EditLabelStoreImpl$special$$inlined$map$1$2$1 +
EditLabelStoreImpl$special$$inlined$map$2 + + 0% + + + (0/2) + + +
EditLabelStoreImpl$special$$inlined$map$2$2 + + 0% + + + (0/1) + + +
EditLabelStoreImpl$special$$inlined$map$2$2$1 +
Total + + 0% + + + (0/19) + + + + 0% + + + (0/18) + + + + 0% + + + (0/58) + + + + 0% + + + (0/390) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.edit_label.ui.store
+ 
+ import androidx.paging.PagingData
+ import androidx.paging.cachedIn
+ import androidx.paging.map
+ import com.stslex.aproselection.core.core.Logger
+ import com.stslex93.notes.core.ui.base.store.BaseStoreImpl
+ import com.stslex93.notes.feature.edit_label.domain.interactor.EditLabelInteractor
+ import com.stslex93.notes.feature.edit_label.domain.model.LabelDomain
+ import com.stslex93.notes.feature.edit_label.ui.model.Label
+ import com.stslex93.notes.feature.edit_label.ui.model.toUi
+ import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.Action
+ import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.Event
+ import com.stslex93.notes.feature.edit_label.ui.store.EditLabelStore.State
+ import kotlinx.collections.immutable.persistentSetOf
+ import kotlinx.collections.immutable.toImmutableSet
+ import kotlinx.coroutines.Dispatchers
+ import kotlinx.coroutines.ExperimentalCoroutinesApi
+ import kotlinx.coroutines.flow.MutableStateFlow
+ import kotlinx.coroutines.flow.SharingStarted
+ import kotlinx.coroutines.flow.StateFlow
+ import kotlinx.coroutines.flow.distinctUntilChanged
+ import kotlinx.coroutines.flow.flatMapLatest
+ import kotlinx.coroutines.flow.flowOn
+ import kotlinx.coroutines.flow.map
+ import kotlinx.coroutines.flow.stateIn
+ import kotlinx.coroutines.launch
+ import java.util.UUID
+ import javax.inject.Inject
+ 
+ class EditLabelStoreImpl @Inject constructor(
+     private val interactor: EditLabelInteractor
+ ) : EditLabelStore, BaseStoreImpl<State, Event, Action>() {
+ 
+     override val initialState: State = State(
+         notesIds = persistentSetOf(),
+         query = "",
+         labels = ::labels
+     )
+ 
+     override val state: MutableStateFlow<State> = MutableStateFlow(initialState)
+ 
+     @OptIn(ExperimentalCoroutinesApi::class)
+     private val labels: StateFlow<PagingData<Label>>
+         get() = state
+             .map { currentState ->
+                 currentState.query
+             }
+             .distinctUntilChanged()
+             .flatMapLatest(interactor::searchLabels)
+             .map { pagingData ->
+                 pagingData.map { note -> note.toUi() }
+             }
+             .cachedIn(scope)
+             .flowOn(Dispatchers.IO)
+             .stateIn(
+                 scope = scope,
+                 started = SharingStarted.Lazily,
+                 initialValue = PagingData.empty()
+             )
+ 
+     override fun processAction(action: Action) {
+         when (action) {
+             is Action.Init -> initStore(action)
+             Action.BackPressed -> sendEvent(Event.Navigation.OnBackPressed)
+             Action.AddLabelClicked -> onCreateClicked()
+             is Action.QueryInput -> onQueryInput(action)
+             is Action.OnLabelSelected -> onLabelSelected(action)
+         }
+     }
+ 
+     private fun onLabelSelected(action: Action.OnLabelSelected) {
+         val currentState = state.value
+         scope.launch(Dispatchers.IO) {
+             runCatching {
+                 interactor.addLabel(
+                     noteIds = currentState.notesIds,
+                     labelUuid = action.labelUuid
+                 )
+             }.onSuccess {
+                 sendEvent(Event.Navigation.OnBackPressed)
+             }.onFailure { exception ->
+                 Logger.exception(exception)
+                 sendEvent(Event.SnackbarError)
+             }
+         }
+     }
+ 
+     private fun initStore(action: Action.Init) {
+         updateState { currentState ->
+             currentState.copy(
+                 notesIds = action.noteIds.toImmutableSet()
+             )
+         }
+     }
+ 
+     private fun onQueryInput(action: Action.QueryInput) {
+         updateState { currentState ->
+             currentState.copy(
+                 query = action.text.take(15)
+             )
+         }
+     }
+ 
+     private fun onCreateClicked() {
+         val currentState = state.value
+         if (currentState.query.isBlank()) return
+         scope.launch(Dispatchers.IO) {
+             runCatching {
+                 interactor.createLabelAndAdd(
+                     noteIds = currentState.notesIds,
+                     label = LabelDomain(
+                         uuid = UUID.randomUUID().toString(),
+                         title = currentState.query,
+                     )
+                 )
+             }.onSuccess {
+                 sendEvent(Event.Navigation.OnBackPressed)
+             }.onFailure { exception ->
+                 Logger.exception(exception)
+                 sendEvent(Event.SnackbarError)
+             }
+         }
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-1f/index.html b/docs/reports/ns-1f/index.html new file mode 100644 index 00000000..657d6332 --- /dev/null +++ b/docs/reports/ns-1f/index.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1f/index_SORT_BY_BLOCK.html b/docs/reports/ns-1f/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..67af48ae --- /dev/null +++ b/docs/reports/ns-1f/index_SORT_BY_BLOCK.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1f/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-1f/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..0901b4c0 --- /dev/null +++ b/docs/reports/ns-1f/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1f/index_SORT_BY_CLASS.html b/docs/reports/ns-1f/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..374b1447 --- /dev/null +++ b/docs/reports/ns-1f/index_SORT_BY_CLASS.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1f/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-1f/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..9308c626 --- /dev/null +++ b/docs/reports/ns-1f/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1f/index_SORT_BY_LINE.html b/docs/reports/ns-1f/index_SORT_BY_LINE.html new file mode 100644 index 00000000..b0a85630 --- /dev/null +++ b/docs/reports/ns-1f/index_SORT_BY_LINE.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1f/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-1f/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..62a6b43c --- /dev/null +++ b/docs/reports/ns-1f/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1f/index_SORT_BY_METHOD.html b/docs/reports/ns-1f/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..026d2020 --- /dev/null +++ b/docs/reports/ns-1f/index_SORT_BY_METHOD.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1f/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-1f/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..0ae5e2f2 --- /dev/null +++ b/docs/reports/ns-1f/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1f/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-1f/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..7f1c9faa --- /dev/null +++ b/docs/reports/ns-1f/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1f/index_SORT_BY_STATEMENT.html b/docs/reports/ns-1f/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..0ace9da7 --- /dev/null +++ b/docs/reports/ns-1f/index_SORT_BY_STATEMENT.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1f/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-1f/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..d34a3ce3 --- /dev/null +++ b/docs/reports/ns-1f/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.interactor + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.interactor

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.interactor + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-1f/sources/source-1.html b/docs/reports/ns-1f/sources/source-1.html new file mode 100644 index 00000000..ee40d97c --- /dev/null +++ b/docs/reports/ns-1f/sources/source-1.html @@ -0,0 +1,232 @@ + + + + + + + + app Coverage Report > HomeInteractorImpl + + + + + + +
+ + +

Coverage Summary for Class: HomeInteractorImpl (com.stslex93.notes.feature.home.domain.interactor)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeInteractorImpl + + 0% + + + (0/3) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/29) + +
HomeInteractorImpl$searchNotes$$inlined$map$1 + + 0% + + + (0/2) + + +
HomeInteractorImpl$searchNotes$$inlined$map$1$2 + + 0% + + + (0/1) + + +
HomeInteractorImpl$searchNotes$$inlined$map$1$2$1 +
HomeInteractorImpl$searchNotes$1$1 + + 0% + + + (0/1) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/29) + +
Total + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/58) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.domain.interactor
+ 
+ import androidx.paging.PagingData
+ import androidx.paging.map
+ import com.stslex93.notes.core.label.repository.LabelRepository
+ import com.stslex93.notes.core.notes.repository.NoteRepository
+ import com.stslex93.notes.feature.home.domain.model.NoteDomain
+ import com.stslex93.notes.feature.home.domain.model.toDomain
+ import kotlinx.coroutines.Dispatchers
+ import kotlinx.coroutines.flow.Flow
+ import kotlinx.coroutines.flow.flowOn
+ import kotlinx.coroutines.flow.map
+ import javax.inject.Inject
+ 
+ class HomeInteractorImpl @Inject constructor(
+     private val noteRepository: NoteRepository,
+     private val labelRepository: LabelRepository
+ ) : HomeInteractor {
+ 
+     override fun searchNotes(query: String): Flow<PagingData<NoteDomain>> =
+         noteRepository
+             .searchNotes(query)
+             .map { pagingData ->
+                 pagingData.map { noteDataModel ->
+                     val labels = labelRepository
+                         .getAllLabels(noteDataModel.labelUuids)
+                         .map {
+                             it.toDomain()
+                         }
+                         .toSet()
+                     noteDataModel.toDomain(labels)
+                 }
+             }
+             .flowOn(Dispatchers.IO)
+ 
+     override suspend fun deleteNotes(noteIds: List<Int>) {
+         noteRepository.deleteNotesById(noteIds)
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-1f/sources/source-2.html b/docs/reports/ns-1f/sources/source-2.html new file mode 100644 index 00000000..d8822d74 --- /dev/null +++ b/docs/reports/ns-1f/sources/source-2.html @@ -0,0 +1,85 @@ + + + + + + + + app Coverage Report > HomeInteractor + + + + + + +
+ + +

Coverage Summary for Class: HomeInteractor (com.stslex93.notes.feature.home.domain.interactor)

+ + + + + + + + + + +
Class + Branch, % +
HomeInteractor +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.domain.interactor
+ 
+ import androidx.paging.PagingData
+ import com.stslex93.notes.feature.home.domain.model.NoteDomain
+ import kotlinx.coroutines.flow.Flow
+ 
+ interface HomeInteractor {
+ 
+     fun searchNotes(query: String): Flow<PagingData<NoteDomain>>
+ 
+     suspend fun deleteNotes(noteIds: List<Int>)
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-2/index.html b/docs/reports/ns-2/index.html index a763837c..980b4f10 100644 --- a/docs/reports/ns-2/index.html +++ b/docs/reports/ns-2/index.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes.ui + + app Coverage Report > com.stslex93.notes.core.core - + +
+com.stslex93.notes.core.core
-

Coverage Summary for Package: com.stslex93.notes.ui

+

Coverage Summary for Package: com.stslex93.notes.core.core

@@ -44,21 +46,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

- + - + @@ -118,93 +113,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

- - - - - - - - - - - - - - - - - + + - - - - - - - - - @@ -304,18 +163,15 @@

Coverage Summary for Package: com.stslex93.notes.ui

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/index_SORT_BY_BLOCK.html b/docs/reports/ns-2/index_SORT_BY_BLOCK.html index 6833ec10..5867f126 100644 --- a/docs/reports/ns-2/index_SORT_BY_BLOCK.html +++ b/docs/reports/ns-2/index_SORT_BY_BLOCK.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes.ui + + app Coverage Report > com.stslex93.notes.core.core - + +
+com.stslex93.notes.core.core
-

Coverage Summary for Package: com.stslex93.notes.ui

+

Coverage Summary for Package: com.stslex93.notes.core.core

Package
com.stslex93.notes.uicom.stslex93.notes.core.core 0% - (0/8) - - - - 0% - - - (0/12) + (0/1) @@ -66,15 +60,16 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/54) + (0/1)
0% - (0/46) + (0/1) @@ -82,7 +77,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/492) + (0/7)
AppInitKt - - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) - - - - 0% - - - (0/124) - -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -
MaterialThemeKtApplicationApiKt 0% @@ -221,63 +130,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

(0/1)
0% - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
NavigationHostKt - - 0% - - - (0/2) - - - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) + (0/1) @@ -285,7 +144,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/91) + (0/7)
@@ -44,21 +46,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

- + - + @@ -118,93 +113,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

- - - - - - - - - - - - - - - - - + + - - - - - - - - - @@ -304,18 +163,15 @@

Coverage Summary for Package: com.stslex93.notes.ui

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-2/index_SORT_BY_BLOCK_DESC.html index 379bcd10..5d9cc39f 100644 --- a/docs/reports/ns-2/index_SORT_BY_BLOCK_DESC.html +++ b/docs/reports/ns-2/index_SORT_BY_BLOCK_DESC.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes.ui + + app Coverage Report > com.stslex93.notes.core.core - + +
+com.stslex93.notes.core.core
-

Coverage Summary for Package: com.stslex93.notes.ui

+

Coverage Summary for Package: com.stslex93.notes.core.core

Package
com.stslex93.notes.uicom.stslex93.notes.core.core 0% - (0/8) - - - - 0% - - - (0/12) + (0/1) @@ -66,15 +60,16 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/54) + (0/1)
0% - (0/46) + (0/1) @@ -82,7 +77,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/492) + (0/7)
AppInitKt - - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) - - - - 0% - - - (0/124) - -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -
MaterialThemeKtApplicationApiKt 0% @@ -221,63 +130,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

(0/1)
0% - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
NavigationHostKt - - 0% - - - (0/2) - - - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) + (0/1) @@ -285,7 +144,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/91) + (0/7)
@@ -44,21 +46,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

- + - + @@ -118,50 +113,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

- - - - - - - - - + + - - - - - - - - - - - - - - - - - @@ -304,18 +163,15 @@

Coverage Summary for Package: com.stslex93.notes.ui

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/index_SORT_BY_CLASS.html b/docs/reports/ns-2/index_SORT_BY_CLASS.html index 9b003068..7a3854ff 100644 --- a/docs/reports/ns-2/index_SORT_BY_CLASS.html +++ b/docs/reports/ns-2/index_SORT_BY_CLASS.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes.ui + + app Coverage Report > com.stslex93.notes.core.core - + +
+com.stslex93.notes.core.core
-

Coverage Summary for Package: com.stslex93.notes.ui

+

Coverage Summary for Package: com.stslex93.notes.core.core

Package
com.stslex93.notes.uicom.stslex93.notes.core.core 0% - (0/8) - - - - 0% - - - (0/12) + (0/1) @@ -66,15 +60,16 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/54) + (0/1)
0% - (0/46) + (0/1) @@ -82,7 +77,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/492) + (0/7)
NavigationHostKt - - 0% - - - (0/2) - - - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) - - - - 0% - - - (0/91) - -
MaterialThemeKtApplicationApiKt 0% @@ -178,106 +130,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

(0/1)
0% - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -
AppInitKt - - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) + (0/1) @@ -285,7 +144,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/124) + (0/7)
@@ -44,21 +46,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

- + - + @@ -118,93 +113,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

- - - - - - - - - - - - - - - - - + + - - - - - - - - - @@ -304,18 +163,15 @@

Coverage Summary for Package: com.stslex93.notes.ui

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-2/index_SORT_BY_CLASS_DESC.html index 39ff8e68..9297c749 100644 --- a/docs/reports/ns-2/index_SORT_BY_CLASS_DESC.html +++ b/docs/reports/ns-2/index_SORT_BY_CLASS_DESC.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes.ui + + app Coverage Report > com.stslex93.notes.core.core - + +
+com.stslex93.notes.core.core
-

Coverage Summary for Package: com.stslex93.notes.ui

+

Coverage Summary for Package: com.stslex93.notes.core.core

Package
com.stslex93.notes.uicom.stslex93.notes.core.core 0% - (0/8) - - - - 0% - - - (0/12) + (0/1) @@ -66,15 +60,16 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/54) + (0/1)
0% - (0/46) + (0/1) @@ -82,7 +77,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/492) + (0/7)
AppInitKt - - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) - - - - 0% - - - (0/124) - -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -
MaterialThemeKtApplicationApiKt 0% @@ -221,63 +130,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

(0/1)
0% - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
NavigationHostKt - - 0% - - - (0/2) - - - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) + (0/1) @@ -285,7 +144,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/91) + (0/7)
@@ -44,21 +46,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

- + - + @@ -118,50 +113,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

- - - - - - - - - + + - - - - - - - - - - - - - - - - - @@ -304,18 +163,15 @@

Coverage Summary for Package: com.stslex93.notes.ui

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/index_SORT_BY_LINE.html b/docs/reports/ns-2/index_SORT_BY_LINE.html index f19ddb72..355f9ecf 100644 --- a/docs/reports/ns-2/index_SORT_BY_LINE.html +++ b/docs/reports/ns-2/index_SORT_BY_LINE.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes.ui + + app Coverage Report > com.stslex93.notes.core.core - + +
+com.stslex93.notes.core.core
-

Coverage Summary for Package: com.stslex93.notes.ui

+

Coverage Summary for Package: com.stslex93.notes.core.core

Package
com.stslex93.notes.uicom.stslex93.notes.core.core 0% - (0/8) - - - - 0% - - - (0/12) + (0/1) @@ -66,15 +60,16 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/54) + (0/1)
0% - (0/46) + (0/1) @@ -82,7 +77,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/492) + (0/7)
NavigationHostKt - - 0% - - - (0/2) - - - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) - - - - 0% - - - (0/91) - -
MaterialThemeKtApplicationApiKt 0% @@ -178,106 +130,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

(0/1)
0% - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -
AppInitKt - - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) + (0/1) @@ -285,7 +144,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/124) + (0/7)
@@ -44,21 +46,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

- + - + @@ -118,93 +113,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

- - - - - - - - - - - - - - - - - + + - - - - - - - - - @@ -304,18 +163,15 @@

Coverage Summary for Package: com.stslex93.notes.ui

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-2/index_SORT_BY_LINE_DESC.html index 456b27fd..996dedb0 100644 --- a/docs/reports/ns-2/index_SORT_BY_LINE_DESC.html +++ b/docs/reports/ns-2/index_SORT_BY_LINE_DESC.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes.ui + + app Coverage Report > com.stslex93.notes.core.core - + +
+com.stslex93.notes.core.core
-

Coverage Summary for Package: com.stslex93.notes.ui

+

Coverage Summary for Package: com.stslex93.notes.core.core

Package
com.stslex93.notes.uicom.stslex93.notes.core.core 0% - (0/8) - - - - 0% - - - (0/12) + (0/1) @@ -66,15 +60,16 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/54) + (0/1)
0% - (0/46) + (0/1) @@ -82,7 +77,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/492) + (0/7)
AppInitKt - - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) - - - - 0% - - - (0/124) - -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -
MaterialThemeKtApplicationApiKt 0% @@ -221,63 +130,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

(0/1)
0% - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
NavigationHostKt - - 0% - - - (0/2) - - - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) + (0/1) @@ -285,7 +144,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/91) + (0/7)
@@ -44,21 +46,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

- + - + @@ -118,50 +113,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

- - - - - - - - - + + - - - - - - - - - - - - - - - - - @@ -304,18 +163,15 @@

Coverage Summary for Package: com.stslex93.notes.ui

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/index_SORT_BY_METHOD.html b/docs/reports/ns-2/index_SORT_BY_METHOD.html index de9da90e..aca4878b 100644 --- a/docs/reports/ns-2/index_SORT_BY_METHOD.html +++ b/docs/reports/ns-2/index_SORT_BY_METHOD.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes.ui + + app Coverage Report > com.stslex93.notes.core.core - + +
+com.stslex93.notes.core.core
-

Coverage Summary for Package: com.stslex93.notes.ui

+

Coverage Summary for Package: com.stslex93.notes.core.core

Package
com.stslex93.notes.uicom.stslex93.notes.core.core 0% - (0/8) - - - - 0% - - - (0/12) + (0/1) @@ -66,15 +60,16 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/54) + (0/1)
0% - (0/46) + (0/1) @@ -82,7 +77,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/492) + (0/7)
NavigationHostKt - - 0% - - - (0/2) - - - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) - - - - 0% - - - (0/91) - -
MaterialThemeKtApplicationApiKt 0% @@ -178,106 +130,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

(0/1)
0% - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -
AppInitKt - - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) + (0/1) @@ -285,7 +144,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/124) + (0/7)
@@ -44,21 +46,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

- + - + @@ -118,93 +113,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

- - - - - - - - - - - - - - - - - + + - - - - - - - - - @@ -304,18 +163,15 @@

Coverage Summary for Package: com.stslex93.notes.ui

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-2/index_SORT_BY_METHOD_DESC.html index 021fb64b..4bdc2bd0 100644 --- a/docs/reports/ns-2/index_SORT_BY_METHOD_DESC.html +++ b/docs/reports/ns-2/index_SORT_BY_METHOD_DESC.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes.ui + + app Coverage Report > com.stslex93.notes.core.core - + +
+com.stslex93.notes.core.core
-

Coverage Summary for Package: com.stslex93.notes.ui

+

Coverage Summary for Package: com.stslex93.notes.core.core

Package
com.stslex93.notes.uicom.stslex93.notes.core.core 0% - (0/8) - - - - 0% - - - (0/12) + (0/1) @@ -66,15 +60,16 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/54) + (0/1)
0% - (0/46) + (0/1) @@ -82,7 +77,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/492) + (0/7)
AppInitKt - - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) - - - - 0% - - - (0/124) - -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -
MaterialThemeKtApplicationApiKt 0% @@ -221,63 +130,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

(0/1)
0% - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
NavigationHostKt - - 0% - - - (0/2) - - - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) + (0/1) @@ -285,7 +144,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/91) + (0/7)
@@ -44,21 +46,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

- + - + @@ -118,50 +113,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

- - - - - - - - - + + - - - - - - - - - - - - - - - - - @@ -304,18 +163,15 @@

Coverage Summary for Package: com.stslex93.notes.ui

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-2/index_SORT_BY_NAME_DESC.html index 049e9cfa..a4b743e4 100644 --- a/docs/reports/ns-2/index_SORT_BY_NAME_DESC.html +++ b/docs/reports/ns-2/index_SORT_BY_NAME_DESC.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes.ui + + app Coverage Report > com.stslex93.notes.core.core - + +
+com.stslex93.notes.core.core
-

Coverage Summary for Package: com.stslex93.notes.ui

+

Coverage Summary for Package: com.stslex93.notes.core.core

Package
com.stslex93.notes.uicom.stslex93.notes.core.core 0% - (0/8) - - - - 0% - - - (0/12) + (0/1) @@ -66,15 +60,16 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/54) + (0/1)
0% - (0/46) + (0/1) @@ -82,7 +77,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/492) + (0/7)
NavigationHostKt - - 0% - - - (0/2) - - - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) - - - - 0% - - - (0/91) - -
MaterialThemeKtApplicationApiKt 0% @@ -178,106 +130,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

(0/1)
0% - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -
AppInitKt - - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) + (0/1) @@ -285,7 +144,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/124) + (0/7)
@@ -44,21 +46,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

- + - + @@ -118,50 +113,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

- - - - - - - - - + + - - - - - - - - - - - - - - - - - @@ -304,18 +163,15 @@

Coverage Summary for Package: com.stslex93.notes.ui

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/index_SORT_BY_STATEMENT.html b/docs/reports/ns-2/index_SORT_BY_STATEMENT.html index 175ecc2f..e91fd75b 100644 --- a/docs/reports/ns-2/index_SORT_BY_STATEMENT.html +++ b/docs/reports/ns-2/index_SORT_BY_STATEMENT.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes.ui + + app Coverage Report > com.stslex93.notes.core.core - + +
+com.stslex93.notes.core.core
-

Coverage Summary for Package: com.stslex93.notes.ui

+

Coverage Summary for Package: com.stslex93.notes.core.core

Package
com.stslex93.notes.uicom.stslex93.notes.core.core 0% - (0/8) - - - - 0% - - - (0/12) + (0/1) @@ -66,15 +60,16 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/54) + (0/1)
0% - (0/46) + (0/1) @@ -82,7 +77,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/492) + (0/7)
NavigationHostKt - - 0% - - - (0/2) - - - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) - - - - 0% - - - (0/91) - -
MaterialThemeKtApplicationApiKt 0% @@ -178,106 +130,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

(0/1)
0% - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -
AppInitKt - - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) + (0/1) @@ -285,7 +144,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/124) + (0/7)
@@ -44,21 +46,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

- + - + @@ -118,93 +113,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

- - - - - - - - - - - - - - - - - + + - - - - - - - - - @@ -304,18 +163,15 @@

Coverage Summary for Package: com.stslex93.notes.ui

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-2/index_SORT_BY_STATEMENT_DESC.html index 0271e3cc..7390bc43 100644 --- a/docs/reports/ns-2/index_SORT_BY_STATEMENT_DESC.html +++ b/docs/reports/ns-2/index_SORT_BY_STATEMENT_DESC.html @@ -2,23 +2,25 @@ - Coverage Report > com.stslex93.notes.ui + + app Coverage Report > com.stslex93.notes.core.core - + +
+com.stslex93.notes.core.core
-

Coverage Summary for Package: com.stslex93.notes.ui

+

Coverage Summary for Package: com.stslex93.notes.core.core

Package
com.stslex93.notes.uicom.stslex93.notes.core.core 0% - (0/8) - - - - 0% - - - (0/12) + (0/1) @@ -66,15 +60,16 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/54) + (0/1)
0% - (0/46) + (0/1) @@ -82,7 +77,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/492) + (0/7)
AppInitKt - - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) - - - - 0% - - - (0/124) - -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -
MaterialThemeKtApplicationApiKt 0% @@ -221,63 +130,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

(0/1)
0% - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
NavigationHostKt - - 0% - - - (0/2) - - - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) + (0/1) @@ -285,7 +144,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/91) + (0/7)
@@ -44,21 +46,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

- + - + @@ -118,50 +113,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

- - - - - - - - - + + - - - - - - - - - - - - - - - - - @@ -304,18 +163,15 @@

Coverage Summary for Package: com.stslex93.notes.ui

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/sources/source-1.html b/docs/reports/ns-2/sources/source-1.html index 6ce0eea5..9c28fc4b 100644 --- a/docs/reports/ns-2/sources/source-1.html +++ b/docs/reports/ns-2/sources/source-1.html @@ -4,29 +4,34 @@ - Coverage Report > AppInitKt + + app Coverage Report > ApplicationApiKt - + +
-

Coverage Summary for Class: AppInitKt (com.stslex93.notes.ui)

+

Coverage Summary for Class: ApplicationApiKt (com.stslex93.notes.core.core)

Package
com.stslex93.notes.uicom.stslex93.notes.core.core 0% - (0/8) - - - - 0% - - - (0/12) + (0/1) @@ -66,15 +60,16 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/54) + (0/1)
0% - (0/46) + (0/1) @@ -82,7 +77,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/492) + (0/7)
NavigationHostKt - - 0% - - - (0/2) - - - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) - - - - 0% - - - (0/91) - -
MaterialThemeKtApplicationApiKt 0% @@ -178,106 +130,13 @@

Coverage Summary for Package: com.stslex93.notes.ui

(0/1)
0% - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -
AppInitKt - - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) + (0/1) @@ -285,7 +144,7 @@

Coverage Summary for Package: com.stslex93.notes.ui

0% - (0/124) + (0/7)
- + @@ -44,7 +49,7 @@

Coverage Summary for Class: AppInitKt (com.stslex93.notes.ui)

- + - - - - - - - - - - - - - - - - - - - - +
Class + Class, % + Method, %
AppInitKtApplicationApiKt 0% @@ -53,33 +58,6 @@

Coverage Summary for Class: AppInitKt (com.stslex93.notes.ui)

(0/1)
- - 0% - - - (0/4) - - - - 0% - - - (0/13) - - - - 0% - - - (0/105) - -
AppInitKt$AppInit$1$1 0% @@ -87,72 +65,14 @@

Coverage Summary for Class: AppInitKt (com.stslex93.notes.ui)

(0/1) -
- - 0% - - - (0/2) - - - - 0% - - - (0/4) - - - - 0% - - - (0/19) - -
AppInitKt$AppInit$1$1$invoke$$inlined$onDispose$1 - - 0% - - - (0/2) - -
AppInitKt$AppInit$3 -
Total 0% - (0/4) - - - - 0% - - - (0/6) - - - - 0% - - - (0/17) + (0/1) @@ -160,10 +80,11 @@

Coverage Summary for Class: AppInitKt (com.stslex93.notes.ui)

0% - (0/124) + (0/7)

@@ -171,48 +92,18 @@

Coverage Summary for Class: AppInitKt (com.stslex93.notes.ui)

-
1 package com.stslex93.notes.ui -2  -3 import androidx.compose.foundation.background -4 import androidx.compose.foundation.isSystemInDarkTheme -5 import androidx.compose.foundation.layout.Box -6 import androidx.compose.foundation.layout.fillMaxSize -7 import androidx.compose.material3.MaterialTheme -8 import androidx.compose.runtime.Composable -9 import androidx.compose.runtime.DisposableEffect -10 import androidx.compose.ui.Modifier -11 import androidx.compose.ui.graphics.Color -12 import androidx.navigation.NavHostController -13 import com.google.accompanist.systemuicontroller.rememberSystemUiController -14  -15 @Composable -16 fun AppInit( -17  navController: NavHostController, -18  modifier: Modifier = Modifier -19 ) { -20  val systemUiController = rememberSystemUiController() -21  val isDarkTheme = isSystemInDarkTheme() -22  -23  DisposableEffect(systemUiController, isDarkTheme) { -24  systemUiController.setSystemBarsColor( -25  color = Color.Transparent, -26  darkIcons = isDarkTheme.not(), -27  ) -28  onDispose {} -29  } -30  -31  Box( -32  modifier = Modifier -33  .fillMaxSize() -34  .background(MaterialTheme.colorScheme.background) -35  ) { -36  NavigationHost( -37  navHostController = navController, -38  modifier = modifier -39  ) -40  } -41 } -
+ package com.stslex93.notes.core.core +  + import android.content.Context +  + interface ApplicationApi { +  +  val appApi: AppApi + } +  + val Context.appApi: AppApi +  get() = (this.applicationContext as ApplicationApi).appApi +
@@ -227,18 +118,15 @@

Coverage Summary for Class: AppInitKt (com.stslex93.notes.ui)

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/sources/source-2.html b/docs/reports/ns-2/sources/source-2.html index da7656c6..ebdbf48d 100644 --- a/docs/reports/ns-2/sources/source-2.html +++ b/docs/reports/ns-2/sources/source-2.html @@ -4,189 +4,39 @@ - Coverage Report > MainActivity + + app Coverage Report > AppApi - + +
-

Coverage Summary for Class: MainActivity (com.stslex93.notes.ui)

+

Coverage Summary for Class: AppApi (com.stslex93.notes.core.core)

- - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - +
Class - Method, % - Branch, % - Line, % - - Instruction, % -
MainActivity - - 0% - - - (0/3) - - - - 0% - - - (0/6) - - - - 0% - - - (0/7) - - - - 0% - - - (0/65) - -
MainActivity$onCreate$1 - - 0% - - - (0/1) - - - - 0% - - - (0/8) - - - - 0% - - - (0/2) - - - - 0% - - - (0/34) - -
MainActivity$onCreate$1$1 - - 0% - - - (0/1) - - - - 0% - - - (0/8) - - - - 0% - - - (0/3) - - - - 0% - - - (0/39) - -
MainActivity$SetupComposeDependencies$1AppApi -
Total - - 0% - - - (0/5) - - - - 0% - - - (0/22) - - - - 0% - - - (0/12) - - - - 0% - - - (0/138) - -

@@ -194,43 +44,10 @@

Coverage Summary for Class: MainActivity (com.stslex93.notes.ui)

-
1 package com.stslex93.notes.ui -2  -3 import android.os.Bundle -4 import androidx.activity.compose.setContent -5 import androidx.appcompat.app.AppCompatActivity -6 import androidx.compose.runtime.Composable -7 import androidx.core.view.WindowCompat -8 import androidx.navigation.NavHostController -9 import androidx.navigation.compose.rememberNavController -10 import com.stslex93.notes.core.navigation.di.moduleCoreNavigation -11 import org.koin.androidx.compose.getKoin -12  -13 class MainActivity : AppCompatActivity() { -14  -15  override fun onCreate(savedInstanceState: Bundle?) { -16  super.onCreate(savedInstanceState) -17  -18  WindowCompat.setDecorFitsSystemWindows(window, false) -19  setContent { -20  AppTheme { -21  val navController = rememberNavController() -22  SetupComposeDependencies(navController) -23  AppInit(navController) -24  } -25  } -26  } -27  -28  @Composable -29  private fun SetupComposeDependencies( -30  navController: NavHostController -31  ) { -32  getKoin().loadModules( -33  listOf(moduleCoreNavigation(navController)) -34  ) -35  } -36 } -
+ package com.stslex93.notes.core.core +  + interface AppApi : AppCoreApi +
@@ -245,18 +62,15 @@

Coverage Summary for Class: MainActivity (com.stslex93.notes.ui)

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/sources/source-3.html b/docs/reports/ns-2/sources/source-3.html index 59840c37..ae5800fa 100644 --- a/docs/reports/ns-2/sources/source-3.html +++ b/docs/reports/ns-2/sources/source-3.html @@ -4,119 +4,39 @@ - Coverage Report > MaterialThemeKt + + app Coverage Report > AppCoreApi - + +
-

Coverage Summary for Class: MaterialThemeKt (com.stslex93.notes.ui)

+

Coverage Summary for Class: AppCoreApi (com.stslex93.notes.core.core)

- - - - - - - - - - - - + - - - - - - +
Class - Method, % - Branch, % - Line, % - - Instruction, % -
MaterialThemeKt - - 0% - - - (0/1) - - - - 0% - - - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -
MaterialThemeKt$AppTheme$1AppCoreApi -
Total - - 0% - - - (0/1) - - - - 0% - - - (0/16) - - - - 0% - - - (0/8) - - - - 0% - - - (0/139) - -

@@ -124,30 +44,15 @@

Coverage Summary for Class: MaterialThemeKt (com.stslex93.notes.ui)

-
1 package com.stslex93.notes.ui -2  -3 import androidx.compose.foundation.isSystemInDarkTheme -4 import androidx.compose.material3.MaterialTheme -5 import androidx.compose.material3.darkColorScheme -6 import androidx.compose.material3.lightColorScheme -7 import androidx.compose.runtime.Composable -8  -9 @Composable -10 fun AppTheme( -11  content: @Composable () -> Unit -12 ) { -13  val colorScheme = if (isSystemInDarkTheme()) { -14  darkColorScheme() -15  } else { -16  lightColorScheme() -17  } -18  -19  MaterialTheme( -20  colorScheme = colorScheme, -21  content = content -22  ) -23 } -
+ package com.stslex93.notes.core.core +  + import android.content.Context +  + interface AppCoreApi { +  +  val context: Context + } +
@@ -162,18 +67,15 @@

Coverage Summary for Class: MaterialThemeKt (com.stslex93.notes.ui)

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-2/sources/source-4.html b/docs/reports/ns-2/sources/source-4.html index b7802c50..f969ab0a 100644 --- a/docs/reports/ns-2/sources/source-4.html +++ b/docs/reports/ns-2/sources/source-4.html @@ -4,147 +4,39 @@ - Coverage Report > NavigationHostKt + + app Coverage Report > ApplicationApi - + +
-

Coverage Summary for Class: NavigationHostKt (com.stslex93.notes.ui)

+

Coverage Summary for Class: ApplicationApi (com.stslex93.notes.core.core)

- - - - - - - - - - - - - - - - - - + - - - - - - +
Class - Method, % - Branch, % - Line, % - - Instruction, % -
NavigationHostKt - - 0% - - - (0/1) - - - - 0% - - - (0/10) - - - - 0% - - - (0/7) - - - - 0% - - - (0/83) - -
NavigationHostKt$NavigationHost$1$1 - - 0% - - - (0/1) - - - - - 0% - - - (0/2) - - - - 0% - - - (0/8) - -
NavigationHostKt$NavigationHost$2ApplicationApi -
Total - - 0% - - - (0/2) - - - - 0% - - - (0/10) - - - - 0% - - - (0/9) - - - - 0% - - - (0/91) - -

@@ -152,31 +44,18 @@

Coverage Summary for Class: NavigationHostKt (com.stslex93.notes.ui)

-
1 package com.stslex93.notes.ui -2  -3 import androidx.compose.runtime.Composable -4 import androidx.compose.ui.Modifier -5 import androidx.navigation.NavHostController -6 import androidx.navigation.compose.NavHost -7 import com.stslex93.notes.core.navigation.model.AppDestination -8 import com.stslex93.notes.feature.edit.ui.init.editGraph -9 import com.stslex93.notes.feature.home.ui.init.homeGraph -10  -11 @Composable -12 fun NavigationHost( -13  navHostController: NavHostController, -14  modifier: Modifier = Modifier, -15  startDestination: AppDestination = AppDestination.HOME -16 ) { -17  NavHost( -18  navController = navHostController, -19  startDestination = startDestination.route -20  ) { -21  homeGraph(modifier) -22  editGraph(modifier) -23  } -24 } -
+ package com.stslex93.notes.core.core +  + import android.content.Context +  + interface ApplicationApi { +  +  val appApi: AppApi + } +  + val Context.appApi: AppApi +  get() = (this.applicationContext as ApplicationApi).appApi +
@@ -191,18 +70,15 @@

Coverage Summary for Class: NavigationHostKt (com.stslex93.notes.ui)

@*/ if (!msie || msie && msie9) { - var codeBlock = document.getElementById('sourceCode'); - - if (codeBlock) { - hljs.highlightBlock(codeBlock); - } + hljs.highlightAll() + hljs.initLineNumbersOnLoad(); } })(); diff --git a/docs/reports/ns-20/index.html b/docs/reports/ns-20/index.html new file mode 100644 index 00000000..d438589b --- /dev/null +++ b/docs/reports/ns-20/index.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-20/index_SORT_BY_BLOCK.html b/docs/reports/ns-20/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..0a065743 --- /dev/null +++ b/docs/reports/ns-20/index_SORT_BY_BLOCK.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-20/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-20/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..7baf0c35 --- /dev/null +++ b/docs/reports/ns-20/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-20/index_SORT_BY_CLASS.html b/docs/reports/ns-20/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..6d136fc1 --- /dev/null +++ b/docs/reports/ns-20/index_SORT_BY_CLASS.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-20/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-20/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..fa440ebe --- /dev/null +++ b/docs/reports/ns-20/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-20/index_SORT_BY_LINE.html b/docs/reports/ns-20/index_SORT_BY_LINE.html new file mode 100644 index 00000000..198fee8b --- /dev/null +++ b/docs/reports/ns-20/index_SORT_BY_LINE.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-20/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-20/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..c66b9dd6 --- /dev/null +++ b/docs/reports/ns-20/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-20/index_SORT_BY_METHOD.html b/docs/reports/ns-20/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..4533ee56 --- /dev/null +++ b/docs/reports/ns-20/index_SORT_BY_METHOD.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-20/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-20/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..ccce8696 --- /dev/null +++ b/docs/reports/ns-20/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-20/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-20/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..a52410cf --- /dev/null +++ b/docs/reports/ns-20/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-20/index_SORT_BY_STATEMENT.html b/docs/reports/ns-20/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..a7719c69 --- /dev/null +++ b/docs/reports/ns-20/index_SORT_BY_STATEMENT.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-20/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-20/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..4a99494b --- /dev/null +++ b/docs/reports/ns-20/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.domain.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.domain.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.domain.model + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/58) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-20/sources/source-1.html b/docs/reports/ns-20/sources/source-1.html new file mode 100644 index 00000000..cb964dff --- /dev/null +++ b/docs/reports/ns-20/sources/source-1.html @@ -0,0 +1,127 @@ + + + + + + + + app Coverage Report > LabelDomain + + + + + + +
+ + +

Coverage Summary for Class: LabelDomain (com.stslex93.notes.feature.home.domain.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.domain.model
+ 
+ data class LabelDomain(
+     val uuid: String,
+     val title: String,
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-20/sources/source-2.html b/docs/reports/ns-20/sources/source-2.html new file mode 100644 index 00000000..14223244 --- /dev/null +++ b/docs/reports/ns-20/sources/source-2.html @@ -0,0 +1,130 @@ + + + + + + + + app Coverage Report > NoteDomain + + + + + + +
+ + +

Coverage Summary for Class: NoteDomain (com.stslex93.notes.feature.home.domain.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomain + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.domain.model
+ 
+ data class NoteDomain(
+     val id: Int = 0,
+     val title: String,
+     val content: String,
+     val timestamp: Long,
+     val labels: Set<LabelDomain>
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-20/sources/source-3.html b/docs/reports/ns-20/sources/source-3.html new file mode 100644 index 00000000..2244505f --- /dev/null +++ b/docs/reports/ns-20/sources/source-3.html @@ -0,0 +1,138 @@ + + + + + + + + app Coverage Report > NoteDomainMapperKt + + + + + + +
+ + +

Coverage Summary for Class: NoteDomainMapperKt (com.stslex93.notes.feature.home.domain.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDomainMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/19) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.domain.model
+ 
+ import com.stslex93.notes.core.label.model.LabelDataModel
+ import com.stslex93.notes.core.notes.model.NoteDataModel
+ 
+ fun NoteDataModel.toDomain(labels: Set<LabelDomain>) = NoteDomain(
+     id = id,
+     title = title,
+     content = content,
+     timestamp = timestamp,
+     labels = labels
+ )
+ 
+ fun LabelDataModel.toDomain(): LabelDomain = LabelDomain(
+     uuid = uuid,
+     title = title,
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-21/index.html b/docs/reports/ns-21/index.html new file mode 100644 index 00000000..bc5f82c5 --- /dev/null +++ b/docs/reports/ns-21/index.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.navigation + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.navigation

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-21/index_SORT_BY_BLOCK.html b/docs/reports/ns-21/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..177c83ea --- /dev/null +++ b/docs/reports/ns-21/index_SORT_BY_BLOCK.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.navigation + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.navigation

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-21/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-21/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..72b73e3d --- /dev/null +++ b/docs/reports/ns-21/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.navigation + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.navigation

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-21/index_SORT_BY_CLASS.html b/docs/reports/ns-21/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..45bd71ee --- /dev/null +++ b/docs/reports/ns-21/index_SORT_BY_CLASS.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.navigation + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.navigation

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-21/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-21/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..07b962cf --- /dev/null +++ b/docs/reports/ns-21/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.navigation + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.navigation

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-21/index_SORT_BY_LINE.html b/docs/reports/ns-21/index_SORT_BY_LINE.html new file mode 100644 index 00000000..e9744dee --- /dev/null +++ b/docs/reports/ns-21/index_SORT_BY_LINE.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.navigation + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.navigation

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-21/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-21/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..5d7fc405 --- /dev/null +++ b/docs/reports/ns-21/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.navigation + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.navigation

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-21/index_SORT_BY_METHOD.html b/docs/reports/ns-21/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..e7067919 --- /dev/null +++ b/docs/reports/ns-21/index_SORT_BY_METHOD.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.navigation + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.navigation

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-21/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-21/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..168ac129 --- /dev/null +++ b/docs/reports/ns-21/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.navigation + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.navigation

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-21/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-21/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..00c51b16 --- /dev/null +++ b/docs/reports/ns-21/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.navigation + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.navigation

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-21/index_SORT_BY_STATEMENT.html b/docs/reports/ns-21/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..13a3a68d --- /dev/null +++ b/docs/reports/ns-21/index_SORT_BY_STATEMENT.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.navigation + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.navigation

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-21/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-21/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..c6084729 --- /dev/null +++ b/docs/reports/ns-21/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.navigation + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.navigation

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.navigation + + 0% + + + (0/2) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/15) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-21/sources/source-1.html b/docs/reports/ns-21/sources/source-1.html new file mode 100644 index 00000000..6018f116 --- /dev/null +++ b/docs/reports/ns-21/sources/source-1.html @@ -0,0 +1,142 @@ + + + + + + + + app Coverage Report > HomeGraphKt + + + + + + +
+ + +

Coverage Summary for Class: HomeGraphKt (com.stslex93.notes.feature.home.navigation)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeGraphKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/22) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.navigation
+ 
+ import androidx.compose.ui.Modifier
+ import androidx.navigation.NavGraphBuilder
+ import androidx.navigation.compose.composable
+ import com.stslex93.notes.core.navigation.model.AppDestination
+ import com.stslex93.notes.feature.home.di.setupComponent
+ import com.stslex93.notes.feature.home.ui.init.HomeScreeInit
+ 
+ fun NavGraphBuilder.homeGraph(
+     modifier: Modifier = Modifier,
+ ) {
+     composable(
+         route = AppDestination.HOME.navigationRoute
+     ) {
+         HomeScreeInit(
+             modifier = modifier,
+             viewModel = setupComponent()
+         )
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-21/sources/source-2.html b/docs/reports/ns-21/sources/source-2.html new file mode 100644 index 00000000..c66540b8 --- /dev/null +++ b/docs/reports/ns-21/sources/source-2.html @@ -0,0 +1,153 @@ + + + + + + + + app Coverage Report > HomeRouterImpl + + + + + + +
+ + +

Coverage Summary for Class: HomeRouterImpl (com.stslex93.notes.feature.home.navigation)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeRouterImpl + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/31) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.navigation
+ 
+ import com.stslex93.notes.core.navigation.model.NavigationScreen
+ import com.stslex93.notes.core.ui.di.Navigator
+ import javax.inject.Inject
+ 
+ class HomeRouterImpl @Inject constructor(
+     private val navigator: Navigator
+ ) : HomeRouter {
+ 
+     override fun navToEditNote(id: Int) {
+         navigator.invoke(
+             NavigationScreen.EditNoteScreen(
+                 noteId = id,
+                 isEdit = true
+             )
+         )
+     }
+ 
+     override fun navToCreateNote() {
+         navigator.invoke(
+             NavigationScreen.EditNoteScreen(
+                 noteId = -1,
+                 isEdit = false
+             )
+         )
+     }
+ 
+     override fun navToEditLabel(noteIds: Set<Int>) {
+         navigator.invoke(NavigationScreen.EditLabelScreen(noteIds))
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-21/sources/source-3.html b/docs/reports/ns-21/sources/source-3.html new file mode 100644 index 00000000..5fddfd2b --- /dev/null +++ b/docs/reports/ns-21/sources/source-3.html @@ -0,0 +1,83 @@ + + + + + + + + app Coverage Report > HomeRouter + + + + + + +
+ + +

Coverage Summary for Class: HomeRouter (com.stslex93.notes.feature.home.navigation)

+ + + + + + + + + + +
Class + Branch, % +
HomeRouter +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.navigation
+ 
+ interface HomeRouter {
+ 
+     fun navToEditNote(id: Int)
+ 
+     fun navToCreateNote()
+ 
+     fun navToEditLabel(noteIds: Set<Int>)
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-22/index.html b/docs/reports/ns-22/index.html new file mode 100644 index 00000000..b1709d70 --- /dev/null +++ b/docs/reports/ns-22/index.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-22/index_SORT_BY_BLOCK.html b/docs/reports/ns-22/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..7bab8a9c --- /dev/null +++ b/docs/reports/ns-22/index_SORT_BY_BLOCK.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-22/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-22/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..4ed80d06 --- /dev/null +++ b/docs/reports/ns-22/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-22/index_SORT_BY_CLASS.html b/docs/reports/ns-22/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..cf9a4ea2 --- /dev/null +++ b/docs/reports/ns-22/index_SORT_BY_CLASS.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-22/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-22/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..36781325 --- /dev/null +++ b/docs/reports/ns-22/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-22/index_SORT_BY_LINE.html b/docs/reports/ns-22/index_SORT_BY_LINE.html new file mode 100644 index 00000000..f973f2a2 --- /dev/null +++ b/docs/reports/ns-22/index_SORT_BY_LINE.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-22/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-22/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..22684569 --- /dev/null +++ b/docs/reports/ns-22/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-22/index_SORT_BY_METHOD.html b/docs/reports/ns-22/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..d9997f6f --- /dev/null +++ b/docs/reports/ns-22/index_SORT_BY_METHOD.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-22/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-22/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..6a3ab964 --- /dev/null +++ b/docs/reports/ns-22/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-22/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-22/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..8b363602 --- /dev/null +++ b/docs/reports/ns-22/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-22/index_SORT_BY_STATEMENT.html b/docs/reports/ns-22/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..198d7e03 --- /dev/null +++ b/docs/reports/ns-22/index_SORT_BY_STATEMENT.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-22/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-22/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..ec486102 --- /dev/null +++ b/docs/reports/ns-22/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + 0% + + + (0/39) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
ComposableSingletons + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-22/sources/source-1.html b/docs/reports/ns-22/sources/source-1.html new file mode 100644 index 00000000..9df3fce2 --- /dev/null +++ b/docs/reports/ns-22/sources/source-1.html @@ -0,0 +1,134 @@ + + + + + + + + app Coverage Report > ComposableSingletons + + + + + + +
+ + +

Coverage Summary for Class: ComposableSingletons (com.stslex93.notes.feature.home.ui)

+ + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons$HomeScreenKt + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
Total + + 0% + + + (0/3) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
+ +
+
+ + Source code is not available
+
+ + + + + + diff --git a/docs/reports/ns-22/sources/source-2.html b/docs/reports/ns-22/sources/source-2.html new file mode 100644 index 00000000..46701e61 --- /dev/null +++ b/docs/reports/ns-22/sources/source-2.html @@ -0,0 +1,152 @@ + + + + + + + + app Coverage Report > HomeViewModel + + + + + + +
+ + +

Coverage Summary for Class: HomeViewModel (com.stslex93.notes.feature.home.ui)

+ + + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/4) + + + + 0% + + + (0/6) + + + + 0% + + + (0/33) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.ui
+ 
+ import com.stslex93.notes.core.ui.base.BaseViewModel
+ import com.stslex93.notes.feature.home.navigation.HomeRouter
+ import com.stslex93.notes.feature.home.ui.store.HomeStore
+ import com.stslex93.notes.feature.home.ui.store.HomeStore.Action
+ import com.stslex93.notes.feature.home.ui.store.HomeStore.Event
+ import com.stslex93.notes.feature.home.ui.store.HomeStore.Event.Navigation
+ import com.stslex93.notes.feature.home.ui.store.HomeStore.State
+ import javax.inject.Inject
+ 
+ class HomeViewModel @Inject constructor(
+     store: HomeStore,
+     private val router: HomeRouter,
+ ) : BaseViewModel<State, Event, Action>(store) {
+ 
+     fun processNavigation(event: Navigation) {
+         when (event) {
+             is Navigation.EditNote -> router.navToEditNote(event.noteId)
+             is Navigation.CreateNote -> router.navToCreateNote()
+             is Navigation.EditLabel -> router.navToEditLabel(event.noteIds)
+         }
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-22/sources/source-3.html b/docs/reports/ns-22/sources/source-3.html new file mode 100644 index 00000000..cd9b94c6 --- /dev/null +++ b/docs/reports/ns-22/sources/source-3.html @@ -0,0 +1,189 @@ + + + + + + + + app Coverage Report > HomeScreenKt + + + + + + +
+ + +

Coverage Summary for Class: HomeScreenKt (com.stslex93.notes.feature.home.ui)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
HomeScreenKt + + 0% + + + (0/2) + + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.ui
+ 
+ import android.content.res.Configuration
+ import androidx.compose.foundation.layout.Box
+ import androidx.compose.foundation.layout.Column
+ import androidx.compose.foundation.layout.fillMaxSize
+ import androidx.compose.foundation.layout.fillMaxWidth
+ import androidx.compose.foundation.layout.systemBarsPadding
+ import androidx.compose.runtime.Composable
+ import androidx.compose.ui.Alignment
+ import androidx.compose.ui.Modifier
+ import androidx.compose.ui.tooling.preview.Preview
+ import androidx.paging.PagingData
+ import androidx.paging.compose.LazyPagingItems
+ import androidx.paging.compose.collectAsLazyPagingItems
+ import com.stslex93.notes.core.ui.theme.PreviewTheme
+ import com.stslex93.notes.feature.home.ui.components.HomeScreenFloatingButton
+ import com.stslex93.notes.feature.home.ui.components.HomeScreenNotes
+ import com.stslex93.notes.feature.home.ui.components.HomeScreenToolbar
+ import com.stslex93.notes.feature.home.ui.model.Note
+ import com.stslex93.notes.feature.home.ui.store.HomeStore.Action
+ import kotlinx.collections.immutable.ImmutableSet
+ import kotlinx.collections.immutable.persistentSetOf
+ import kotlinx.coroutines.flow.MutableStateFlow
+ 
+ @Composable
+ fun HomeScreen(
+     query: String,
+     selectedNotes: ImmutableSet<Int>,
+     notes: LazyPagingItems<Note>,
+     sendAction: (Action) -> Unit,
+     modifier: Modifier = Modifier
+ ) {
+     Box(
+         modifier = modifier
+             .fillMaxSize()
+             .systemBarsPadding()
+     ) {
+         Column(
+             modifier = Modifier.fillMaxSize()
+         ) {
+             HomeScreenToolbar(
+                 isSelectingMode = selectedNotes.isNotEmpty(),
+                 query = query,
+                 onClearClick = {
+                     sendAction(Action.ClearSelection)
+                 }, onTextChange = { value ->
+                     sendAction(Action.QueryInput(value))
+                 },
+                 onLabelCreateClick = {
+                     sendAction(Action.OnLabelEditClick)
+                 }
+             )
+             HomeScreenNotes(
+                 modifier = Modifier
+                     .weight(1f)
+                     .fillMaxWidth(),
+                 items = notes,
+                 selectedItems = selectedNotes,
+                 onClick = { id ->
+                     sendAction(Action.OnNoteClick(id))
+                 },
+                 onLingClick = { id ->
+                     sendAction(Action.OnNoteLongClick(id))
+                 }
+             )
+         }
+ 
+         HomeScreenFloatingButton(
+             modifier = Modifier.align(Alignment.BottomEnd),
+             isSelectingAction = selectedNotes.isEmpty()
+         ) {
+             sendAction(Action.OnNoteFloatingButtonClick)
+         }
+     }
+ }
+ 
+ @Composable
+ @Preview(
+     uiMode = Configuration.UI_MODE_NIGHT_YES or Configuration.UI_MODE_TYPE_NORMAL
+ )
+ fun HomeScreenPreview() {
+     PreviewTheme {
+         val notes = MutableStateFlow(
+             PagingData.from(
+                 Array(10) { index ->
+                     Note(
+                         id = index,
+                         title = "title $index",
+                         content = "content: $index",
+                         timestamp = 0,
+                         labels = persistentSetOf()
+                     )
+                 }.toList()
+             )
+         ).collectAsLazyPagingItems()
+         HomeScreen(
+             query = "",
+             selectedNotes = persistentSetOf(1),
+             notes = notes,
+             sendAction = {}
+         )
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-23/index.html b/docs/reports/ns-23/index.html new file mode 100644 index 00000000..3bb94106 --- /dev/null +++ b/docs/reports/ns-23/index.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-23/index_SORT_BY_BLOCK.html b/docs/reports/ns-23/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..fd3c4127 --- /dev/null +++ b/docs/reports/ns-23/index_SORT_BY_BLOCK.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-23/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-23/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..288e5dc6 --- /dev/null +++ b/docs/reports/ns-23/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-23/index_SORT_BY_CLASS.html b/docs/reports/ns-23/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..253b0ecb --- /dev/null +++ b/docs/reports/ns-23/index_SORT_BY_CLASS.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-23/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-23/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..ba719079 --- /dev/null +++ b/docs/reports/ns-23/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-23/index_SORT_BY_LINE.html b/docs/reports/ns-23/index_SORT_BY_LINE.html new file mode 100644 index 00000000..14b088bd --- /dev/null +++ b/docs/reports/ns-23/index_SORT_BY_LINE.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-23/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-23/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..e0829a35 --- /dev/null +++ b/docs/reports/ns-23/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-23/index_SORT_BY_METHOD.html b/docs/reports/ns-23/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..5995ad54 --- /dev/null +++ b/docs/reports/ns-23/index_SORT_BY_METHOD.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-23/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-23/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..1f9c2ce1 --- /dev/null +++ b/docs/reports/ns-23/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-23/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-23/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..3d8f4ec8 --- /dev/null +++ b/docs/reports/ns-23/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-23/index_SORT_BY_STATEMENT.html b/docs/reports/ns-23/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..822975e9 --- /dev/null +++ b/docs/reports/ns-23/index_SORT_BY_STATEMENT.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-23/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-23/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..63ac70bd --- /dev/null +++ b/docs/reports/ns-23/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.components + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.components

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.components + + 0% + + + (0/5) + + + + 0% + + + (0/31) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons + + 0% + + + (0/5) + + + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-23/sources/source-1.html b/docs/reports/ns-23/sources/source-1.html new file mode 100644 index 00000000..c1aa3d83 --- /dev/null +++ b/docs/reports/ns-23/sources/source-1.html @@ -0,0 +1,246 @@ + + + + + + + + app Coverage Report > ComposableSingletons + + + + + + +
+ + +

Coverage Summary for Class: ComposableSingletons (com.stslex93.notes.feature.home.ui.components)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
ComposableSingletons$HomeScreenFloatingButtonKt + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
ComposableSingletons$HomeScreenItemLabelsKt + + 0% + + + (0/2) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
ComposableSingletons$HomeScreenItemNoteKt + + 0% + + + (0/4) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
ComposableSingletons$HomeScreenNotesKt + + 0% + + + (0/4) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
ComposableSingletons$HomeScreenToolbarKt + + 0% + + + (0/8) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/31) + +
Total + + 0% + + + (0/20) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
+ +
+
+ + Source code is not available
+
+ + + + + + diff --git a/docs/reports/ns-23/sources/source-2.html b/docs/reports/ns-23/sources/source-2.html new file mode 100644 index 00000000..d7379b33 --- /dev/null +++ b/docs/reports/ns-23/sources/source-2.html @@ -0,0 +1,168 @@ + + + + + + + + app Coverage Report > HomeScreenNotesKt + + + + + + +
+ + +

Coverage Summary for Class: HomeScreenNotesKt (com.stslex93.notes.feature.home.ui.components)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
HomeScreenNotesKt + + 0% + + + (0/2) + + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.ui.components
+ 
+ import androidx.compose.foundation.ExperimentalFoundationApi
+ import androidx.compose.foundation.lazy.staggeredgrid.LazyVerticalStaggeredGrid
+ import androidx.compose.foundation.lazy.staggeredgrid.StaggeredGridCells
+ import androidx.compose.runtime.Composable
+ import androidx.compose.runtime.remember
+ import androidx.compose.ui.Modifier
+ import androidx.compose.ui.tooling.preview.Preview
+ import androidx.paging.PagingData
+ import androidx.paging.compose.LazyPagingItems
+ import androidx.paging.compose.collectAsLazyPagingItems
+ import androidx.paging.compose.itemKey
+ import com.stslex93.notes.core.ui.theme.AppTheme
+ import com.stslex93.notes.feature.home.ui.model.Label
+ import com.stslex93.notes.feature.home.ui.model.Note
+ import kotlinx.collections.immutable.ImmutableSet
+ import kotlinx.collections.immutable.persistentSetOf
+ import kotlinx.collections.immutable.toImmutableSet
+ import kotlinx.coroutines.flow.MutableStateFlow
+ 
+ @OptIn(ExperimentalFoundationApi::class)
+ @Composable
+ fun HomeScreenNotes(
+     items: LazyPagingItems<Note>,
+     selectedItems: ImmutableSet<Int>,
+     onClick: (Int) -> Unit,
+     onLingClick: (Int) -> Unit,
+     modifier: Modifier = Modifier
+ ) {
+     LazyVerticalStaggeredGrid(
+         modifier = modifier,
+         columns = StaggeredGridCells.Fixed(2),
+     ) {
+         items(
+             count = items.itemCount,
+             key = items.itemKey { note -> note.id }
+         ) { index ->
+             items[index]?.let { item ->
+                 HomeScreenItemNote(
+                     modifier = Modifier.animateItem(),
+                     isSelected = selectedItems.contains(item.id),
+                     item = item,
+                     onClick = onClick,
+                     onLingClick = onLingClick
+                 )
+             }
+         }
+     }
+ }
+ 
+ @Composable
+ @Preview
+ fun HomeScreenNotesPreview() {
+     AppTheme {
+         val labels = Array(10) {
+             Label(
+                 uuid = "uuid$it",
+                 title = "label$it ".repeat(it.coerceAtLeast(1)),
+             )
+         }.toImmutableSet()
+         val notes = Array(10) {
+             Note(
+                 id = it,
+                 title = "title$it ".repeat(it),
+                 content = "content$it ".repeat(it),
+                 timestamp = System.currentTimeMillis(),
+                 labels = labels
+             )
+         }.toList()
+ 
+         val items = remember {
+             MutableStateFlow(PagingData.from(notes))
+         }.collectAsLazyPagingItems()
+ 
+         HomeScreenNotes(
+             items = items,
+             selectedItems = persistentSetOf(),
+             onClick = {},
+             onLingClick = {}
+         )
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-23/sources/source-3.html b/docs/reports/ns-23/sources/source-3.html new file mode 100644 index 00000000..71792128 --- /dev/null +++ b/docs/reports/ns-23/sources/source-3.html @@ -0,0 +1,166 @@ + + + + + + + + app Coverage Report > HomeScreenFloatingButtonKt + + + + + + +
+ + +

Coverage Summary for Class: HomeScreenFloatingButtonKt (com.stslex93.notes.feature.home.ui.components)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
HomeScreenFloatingButtonKt + + 0% + + + (0/1) + + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.ui.components
+ 
+ import androidx.compose.animation.AnimatedContent
+ import androidx.compose.animation.animateColorAsState
+ import androidx.compose.animation.core.tween
+ import androidx.compose.animation.fadeIn
+ import androidx.compose.animation.fadeOut
+ import androidx.compose.animation.scaleIn
+ import androidx.compose.animation.togetherWith
+ import androidx.compose.foundation.layout.padding
+ import androidx.compose.material.icons.Icons
+ import androidx.compose.material.icons.filled.Add
+ import androidx.compose.material.icons.filled.Delete
+ import androidx.compose.material3.FloatingActionButton
+ import androidx.compose.material3.Icon
+ import androidx.compose.material3.MaterialTheme
+ import androidx.compose.runtime.Composable
+ import androidx.compose.runtime.getValue
+ import androidx.compose.ui.Modifier
+ import androidx.compose.ui.hapticfeedback.HapticFeedbackType
+ import androidx.compose.ui.platform.LocalHapticFeedback
+ import com.stslex93.notes.core.ui.theme.AppDimens
+ 
+ @Composable
+ fun HomeScreenFloatingButton(
+     isSelectingAction: Boolean,
+     modifier: Modifier = Modifier,
+     onClick: () -> Unit,
+ ) {
+     val hapticFeedback = LocalHapticFeedback.current
+ 
+     val containerColor by animateColorAsState(
+         targetValue = if (isSelectingAction) {
+             MaterialTheme.colorScheme.secondaryContainer
+         } else {
+             MaterialTheme.colorScheme.primaryContainer
+         },
+         animationSpec = tween(600, delayMillis = 90),
+         label = "containerColor animation"
+     )
+ 
+     val contentColor by animateColorAsState(
+         targetValue = if (isSelectingAction) {
+             MaterialTheme.colorScheme.onSecondaryContainer
+         } else {
+             MaterialTheme.colorScheme.onPrimaryContainer
+         },
+         animationSpec = tween(600, delayMillis = 90),
+         label = "containerColor animation"
+     )
+ 
+     FloatingActionButton(
+         modifier = modifier
+             .padding(AppDimens.Padding.big),
+         onClick = {
+             hapticFeedback.performHapticFeedback(HapticFeedbackType.TextHandleMove)
+             onClick()
+         },
+         containerColor = containerColor,
+         contentColor = contentColor
+     ) {
+         AnimatedContent(
+             targetState = isSelectingAction,
+             transitionSpec = {
+                 (fadeIn(animationSpec = tween(600, delayMillis = 90)) +
+                         scaleIn(initialScale = 0.92f, animationSpec = tween(600, delayMillis = 90)))
+                     .togetherWith(fadeOut(animationSpec = tween(90)))
+             },
+             label = "home floating button animation",
+         ) { isDeleting ->
+             Icon(
+                 imageVector = if (isDeleting) {
+                     Icons.Default.Add
+                 } else {
+                     Icons.Default.Delete
+                 },
+                 contentDescription = null
+             )
+         }
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-23/sources/source-4.html b/docs/reports/ns-23/sources/source-4.html new file mode 100644 index 00000000..583dd318 --- /dev/null +++ b/docs/reports/ns-23/sources/source-4.html @@ -0,0 +1,256 @@ + + + + + + + + app Coverage Report > HomeScreenItemNoteKt + + + + + + +
+ + +

Coverage Summary for Class: HomeScreenItemNoteKt (com.stslex93.notes.feature.home.ui.components)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
HomeScreenItemNoteKt + + 0% + + + (0/2) + + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.ui.components
+ 
+ import androidx.compose.animation.AnimatedVisibility
+ import androidx.compose.animation.animateColorAsState
+ import androidx.compose.animation.animateContentSize
+ import androidx.compose.animation.core.Spring
+ import androidx.compose.animation.core.animateDpAsState
+ import androidx.compose.animation.core.animateIntAsState
+ import androidx.compose.animation.core.spring
+ import androidx.compose.animation.core.tween
+ import androidx.compose.foundation.ExperimentalFoundationApi
+ import androidx.compose.foundation.background
+ import androidx.compose.foundation.combinedClickable
+ import androidx.compose.foundation.layout.Box
+ import androidx.compose.foundation.layout.Column
+ import androidx.compose.foundation.layout.Spacer
+ import androidx.compose.foundation.layout.fillMaxSize
+ import androidx.compose.foundation.layout.fillMaxWidth
+ import androidx.compose.foundation.layout.height
+ import androidx.compose.foundation.layout.padding
+ import androidx.compose.foundation.layout.wrapContentHeight
+ import androidx.compose.foundation.shape.RoundedCornerShape
+ import androidx.compose.material3.MaterialTheme
+ import androidx.compose.material3.Text
+ import androidx.compose.runtime.Composable
+ import androidx.compose.runtime.getValue
+ import androidx.compose.ui.Alignment
+ import androidx.compose.ui.Modifier
+ import androidx.compose.ui.draw.shadow
+ import androidx.compose.ui.hapticfeedback.HapticFeedbackType
+ import androidx.compose.ui.platform.LocalHapticFeedback
+ import androidx.compose.ui.tooling.preview.Preview
+ import com.stslex93.notes.core.ui.theme.AppDimens
+ import com.stslex93.notes.core.ui.theme.AppTheme
+ import com.stslex93.notes.feature.home.ui.model.Label
+ import com.stslex93.notes.feature.home.ui.model.Note
+ import kotlinx.collections.immutable.toImmutableSet
+ 
+ @OptIn(ExperimentalFoundationApi::class)
+ @Composable
+ fun HomeScreenItemNote(
+     isSelected: Boolean,
+     item: Note,
+     onClick: (Int) -> Unit,
+     onLingClick: (Int) -> Unit,
+     modifier: Modifier = Modifier,
+ ) {
+     val hapticFeedback = LocalHapticFeedback.current
+ 
+     val colorBackground by animateColorAsState(
+         targetValue = if (isSelected) {
+             MaterialTheme.colorScheme.primaryContainer
+         } else {
+             MaterialTheme.colorScheme.surfaceVariant
+         },
+         animationSpec = tween(300),
+         label = "note color container animation"
+     )
+ 
+     val colorText by animateColorAsState(
+         targetValue = if (isSelected) {
+             MaterialTheme.colorScheme.onPrimaryContainer
+         } else {
+             MaterialTheme.colorScheme.onSurfaceVariant
+         },
+         animationSpec = tween(300),
+         label = "note color text animation"
+     )
+ 
+     val padding by animateDpAsState(
+         targetValue = if (isSelected) {
+             AppDimens.Padding.big
+         } else {
+             AppDimens.Padding.normal
+         },
+         animationSpec = spring(
+             dampingRatio = Spring.DampingRatioLowBouncy,
+             stiffness = Spring.StiffnessLow
+         ),
+         label = "note padding animation"
+     )
+ 
+     val maxLines by animateIntAsState(
+         targetValue = if (isSelected) 5 else 3,
+         animationSpec = tween(300),
+         label = "animate note max lines"
+     )
+ 
+     Column(
+         modifier = modifier
+             .padding(AppDimens.Padding.normal)
+             .fillMaxWidth()
+             .wrapContentHeight()
+             .shadow(
+                 elevation = AppDimens.Padding.small,
+                 shape = RoundedCornerShape(AppDimens.Corner.normal)
+             )
+             .background(colorBackground)
+             .combinedClickable(
+                 onClick = {
+                     hapticFeedback.performHapticFeedback(HapticFeedbackType.TextHandleMove)
+                     onClick(item.id)
+                 },
+                 onLongClick = {
+                     hapticFeedback.performHapticFeedback(HapticFeedbackType.LongPress)
+                     onLingClick(item.id)
+                 }
+             )
+             .padding(padding)
+ 
+     ) {
+         Text(
+             text = item.title,
+             color = colorText,
+             style = MaterialTheme.typography.titleMedium,
+             maxLines = 1,
+         )
+         Spacer(modifier = Modifier.height(AppDimens.Padding.small))
+         Text(
+             modifier = Modifier.animateContentSize(tween(300)),
+             text = item.content,
+             style = MaterialTheme.typography.bodyMedium,
+             color = colorText,
+             maxLines = maxLines
+         )
+         AnimatedVisibility(
+             visible = item.labels.isNotEmpty()
+         ) {
+             Column {
+                 Spacer(
+                     modifier = Modifier.height(AppDimens.Padding.normal)
+                 )
+                 HomeScreenItemLabels(
+                     labels = item.labels
+                 )
+             }
+         }
+     }
+ }
+ 
+ @Composable
+ @Preview
+ fun HomeScreenItemNotePreview() {
+     AppTheme {
+         val labels = Array(10) {
+             Label(
+                 uuid = "uuid$it",
+                 title = "label$it ".repeat(it.coerceAtLeast(1)),
+             )
+         }.toSet().toImmutableSet()
+         Box(
+             modifier = Modifier
+                 .fillMaxSize()
+                 .background(MaterialTheme.colorScheme.background),
+             contentAlignment = Alignment.Center
+         ) {
+             HomeScreenItemNote(
+                 isSelected = false,
+                 item = Note(
+                     id = 0,
+                     title = "title",
+                     content = "content",
+                     timestamp = System.currentTimeMillis(),
+                     labels = labels
+                 ),
+                 onClick = {},
+                 onLingClick = {}
+             )
+         }
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-23/sources/source-5.html b/docs/reports/ns-23/sources/source-5.html new file mode 100644 index 00000000..7f60b44f --- /dev/null +++ b/docs/reports/ns-23/sources/source-5.html @@ -0,0 +1,243 @@ + + + + + + + + app Coverage Report > HomeScreenToolbarKt + + + + + + +
+ + +

Coverage Summary for Class: HomeScreenToolbarKt (com.stslex93.notes.feature.home.ui.components)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
HomeScreenToolbarKt + + 0% + + + (0/4) + + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.ui.components
+ 
+ import androidx.compose.animation.AnimatedContent
+ import androidx.compose.animation.AnimatedVisibility
+ import androidx.compose.animation.core.Spring
+ import androidx.compose.animation.core.spring
+ import androidx.compose.animation.scaleIn
+ import androidx.compose.animation.scaleOut
+ import androidx.compose.foundation.background
+ import androidx.compose.foundation.layout.Box
+ import androidx.compose.foundation.layout.fillMaxSize
+ import androidx.compose.foundation.layout.fillMaxWidth
+ import androidx.compose.foundation.layout.padding
+ import androidx.compose.foundation.layout.wrapContentHeight
+ import androidx.compose.material.icons.Icons
+ import androidx.compose.material.icons.filled.Clear
+ import androidx.compose.material3.ExperimentalMaterial3Api
+ import androidx.compose.material3.Icon
+ import androidx.compose.material3.IconButton
+ import androidx.compose.material3.MaterialTheme
+ import androidx.compose.material3.TextField
+ import androidx.compose.material3.TopAppBar
+ import androidx.compose.material3.TopAppBarDefaults
+ import androidx.compose.runtime.Composable
+ import androidx.compose.ui.Alignment
+ import androidx.compose.ui.Modifier
+ import androidx.compose.ui.draw.shadow
+ import androidx.compose.ui.hapticfeedback.HapticFeedbackType
+ import androidx.compose.ui.platform.LocalHapticFeedback
+ import androidx.compose.ui.res.painterResource
+ import androidx.compose.ui.tooling.preview.Preview
+ import com.stslex93.notes.core.ui.theme.AppDimens
+ import com.stslex93.notes.core.ui.theme.AppTheme
+ import com.stslex93.notes.feature.home.R
+ 
+ @Composable
+ fun HomeScreenToolbar(
+     isSelectingMode: Boolean,
+     query: String,
+     onClearClick: () -> Unit,
+     onLabelCreateClick: () -> Unit,
+     onTextChange: (String) -> Unit,
+     modifier: Modifier = Modifier,
+ ) {
+     AnimatedContent(
+         modifier = modifier,
+         targetState = isSelectingMode,
+         label = "animate toolbar"
+     ) { isOptionsToolbar ->
+         if (isOptionsToolbar) {
+             HomeScreenOptionsToolbar(
+                 onLabelCreateClick = onLabelCreateClick
+             )
+         } else {
+             HomeScreenSearchToolbar(
+                 query = query,
+                 onClearClick = onClearClick,
+                 onTextChange = onTextChange
+             )
+         }
+     }
+ 
+ }
+ 
+ @OptIn(ExperimentalMaterial3Api::class)
+ @Composable
+ fun HomeScreenOptionsToolbar(
+     onLabelCreateClick: () -> Unit,
+     modifier: Modifier = Modifier
+ ) {
+     TopAppBar(
+         modifier = modifier
+             .fillMaxWidth()
+             .shadow(AppDimens.Elevation.medium),
+         colors = TopAppBarDefaults.topAppBarColors(
+             containerColor = MaterialTheme.colorScheme.surface
+         ),
+         title = {},
+         actions = {
+             IconButton(
+                 modifier = Modifier
+                     .align(Alignment.CenterVertically),
+                 onClick = onLabelCreateClick
+             ) {
+                 Icon(
+                     painter = painterResource(id = R.drawable.baseline_label_24),
+                     contentDescription = "create label",
+                     tint = MaterialTheme.colorScheme.onSurfaceVariant
+                 )
+             }
+         }
+     )
+ }
+ 
+ @Composable
+ fun HomeScreenSearchToolbar(
+     query: String,
+     onClearClick: () -> Unit,
+     onTextChange: (String) -> Unit,
+     modifier: Modifier = Modifier,
+ ) {
+     val hapticFeedback = LocalHapticFeedback.current
+     TextField(
+         modifier = modifier
+             .fillMaxWidth()
+             .wrapContentHeight()
+             .padding(horizontal = AppDimens.Padding.small),
+         value = query,
+         onValueChange = onTextChange,
+         trailingIcon = {
+             AnimatedVisibility(
+                 visible = query.isNotEmpty(), enter = scaleIn(
+                     spring(
+                         dampingRatio = Spring.DampingRatioHighBouncy,
+                         stiffness = Spring.StiffnessMedium
+                     )
+                 ), exit = scaleOut(
+                     spring(
+                         dampingRatio = Spring.DampingRatioHighBouncy,
+                         stiffness = Spring.StiffnessMedium
+                     )
+                 )
+             ) {
+                 IconButton(
+                     onClick = {
+                         hapticFeedback.performHapticFeedback(HapticFeedbackType.LongPress)
+                         onClearClick()
+                     }
+                 ) {
+                     Icon(
+                         imageVector = Icons.Filled.Clear, contentDescription = null
+                     )
+                 }
+             }
+         },
+     )
+ }
+ 
+ @Composable
+ @Preview
+ fun HomeScreenToolbarPreview() {
+     AppTheme {
+         Box(
+             modifier = Modifier
+                 .fillMaxSize()
+                 .background(MaterialTheme.colorScheme.background),
+         ) {
+             HomeScreenToolbar(
+                 modifier = Modifier.align(Alignment.TopCenter),
+                 isSelectingMode = true,
+                 query = "test",
+                 onClearClick = { /*TODO*/ },
+                 onTextChange = {},
+                 onLabelCreateClick = {}
+             )
+         }
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-23/sources/source-6.html b/docs/reports/ns-23/sources/source-6.html new file mode 100644 index 00000000..bc6a79fb --- /dev/null +++ b/docs/reports/ns-23/sources/source-6.html @@ -0,0 +1,167 @@ + + + + + + + + app Coverage Report > HomeScreenItemLabelsKt + + + + + + +
+ + +

Coverage Summary for Class: HomeScreenItemLabelsKt (com.stslex93.notes.feature.home.ui.components)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
HomeScreenItemLabelsKt + + 0% + + + (0/2) + + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.ui.components
+ 
+ import androidx.compose.foundation.background
+ import androidx.compose.foundation.layout.Box
+ import androidx.compose.foundation.layout.ExperimentalLayoutApi
+ import androidx.compose.foundation.layout.FlowRow
+ import androidx.compose.foundation.layout.padding
+ import androidx.compose.foundation.layout.wrapContentSize
+ import androidx.compose.foundation.shape.RoundedCornerShape
+ import androidx.compose.material3.ElevatedCard
+ import androidx.compose.material3.MaterialTheme
+ import androidx.compose.material3.Text
+ import androidx.compose.runtime.Composable
+ import androidx.compose.ui.Alignment
+ import androidx.compose.ui.Modifier
+ import androidx.compose.ui.text.style.TextAlign
+ import androidx.compose.ui.text.style.TextOverflow
+ import androidx.compose.ui.tooling.preview.Preview
+ import com.stslex93.notes.core.ui.theme.AppDimens
+ import com.stslex93.notes.core.ui.theme.AppTheme
+ import com.stslex93.notes.feature.home.ui.model.Label
+ import kotlinx.collections.immutable.ImmutableSet
+ import kotlinx.collections.immutable.toImmutableSet
+ 
+ @OptIn(ExperimentalLayoutApi::class)
+ @Composable
+ fun HomeScreenItemLabels(
+     labels: ImmutableSet<Label>,
+     modifier: Modifier = Modifier
+ ) {
+     FlowRow(
+         modifier = modifier
+     ) {
+         labels.forEach { label ->
+             ElevatedCard(
+                 modifier = Modifier
+                     .padding(
+                         end = AppDimens.Padding.smallest,
+                         top = AppDimens.Padding.smallest
+                     )
+                     .wrapContentSize(),
+                 shape = RoundedCornerShape(AppDimens.Corner.small),
+             ) {
+                 Text(
+                     modifier = Modifier
+                         .padding(
+                             vertical = AppDimens.Padding.small,
+                             horizontal = AppDimens.Padding.medium
+                         )
+                         .align(Alignment.CenterHorizontally),
+                     text = label.title.take(16),
+                     color = MaterialTheme.colorScheme.onSurface,
+                     style = MaterialTheme.typography.bodySmall,
+                     maxLines = 1,
+                     overflow = TextOverflow.Ellipsis,
+                     textAlign = TextAlign.Center
+                 )
+             }
+         }
+     }
+ }
+ 
+ @Composable
+ @Preview
+ fun HomeScreenItemLabelsPreview() {
+     AppTheme {
+         Box(
+             modifier = Modifier
+                 .background(MaterialTheme.colorScheme.background)
+         ) {
+             val labels = Array(10) {
+                 Label(
+                     uuid = "uuid$it",
+                     title = "label$it ".repeat(it.coerceAtLeast(1)),
+                 )
+             }.toSet().toImmutableSet()
+             HomeScreenItemLabels(
+                 labels = labels
+             )
+         }
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-24/index.html b/docs/reports/ns-24/index.html new file mode 100644 index 00000000..821fa796 --- /dev/null +++ b/docs/reports/ns-24/index.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/26) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-24/index_SORT_BY_BLOCK.html b/docs/reports/ns-24/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..18a21084 --- /dev/null +++ b/docs/reports/ns-24/index_SORT_BY_BLOCK.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/26) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-24/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-24/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..1888e894 --- /dev/null +++ b/docs/reports/ns-24/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/26) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-24/index_SORT_BY_CLASS.html b/docs/reports/ns-24/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..5a05ed7a --- /dev/null +++ b/docs/reports/ns-24/index_SORT_BY_CLASS.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/26) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-24/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-24/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..841996ce --- /dev/null +++ b/docs/reports/ns-24/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/26) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-24/index_SORT_BY_LINE.html b/docs/reports/ns-24/index_SORT_BY_LINE.html new file mode 100644 index 00000000..372ff63e --- /dev/null +++ b/docs/reports/ns-24/index_SORT_BY_LINE.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/26) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-24/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-24/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..ed673fde --- /dev/null +++ b/docs/reports/ns-24/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/26) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-24/index_SORT_BY_METHOD.html b/docs/reports/ns-24/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..7fd6b293 --- /dev/null +++ b/docs/reports/ns-24/index_SORT_BY_METHOD.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/26) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-24/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-24/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..9b1284f7 --- /dev/null +++ b/docs/reports/ns-24/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/26) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-24/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-24/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..60695400 --- /dev/null +++ b/docs/reports/ns-24/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/26) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-24/index_SORT_BY_STATEMENT.html b/docs/reports/ns-24/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..08caed70 --- /dev/null +++ b/docs/reports/ns-24/index_SORT_BY_STATEMENT.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/26) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-24/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-24/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..c0d2f941 --- /dev/null +++ b/docs/reports/ns-24/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,249 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.model + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/26) + + + + 0% + + + (0/125) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-24/sources/source-1.html b/docs/reports/ns-24/sources/source-1.html new file mode 100644 index 00000000..fe2ace90 --- /dev/null +++ b/docs/reports/ns-24/sources/source-1.html @@ -0,0 +1,130 @@ + + + + + + + + app Coverage Report > Label + + + + + + +
+ + +

Coverage Summary for Class: Label (com.stslex93.notes.feature.home.ui.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Label + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/12) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.ui.model
+ 
+ import androidx.compose.runtime.Stable
+ 
+ @Stable
+ data class Label(
+     val uuid: String,
+     val title: String,
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-24/sources/source-2.html b/docs/reports/ns-24/sources/source-2.html new file mode 100644 index 00000000..2607b635 --- /dev/null +++ b/docs/reports/ns-24/sources/source-2.html @@ -0,0 +1,134 @@ + + + + + + + + app Coverage Report > Note + + + + + + +
+ + +

Coverage Summary for Class: Note (com.stslex93.notes.feature.home.ui.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Note + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.ui.model
+ 
+ import androidx.compose.runtime.Stable
+ import kotlinx.collections.immutable.ImmutableSet
+ 
+ @Stable
+ data class Note(
+     val id: Int = 0,
+     val title: String,
+     val content: String,
+     val timestamp: Long,
+     val labels: ImmutableSet<Label>
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-24/sources/source-3.html b/docs/reports/ns-24/sources/source-3.html new file mode 100644 index 00000000..0d383069 --- /dev/null +++ b/docs/reports/ns-24/sources/source-3.html @@ -0,0 +1,152 @@ + + + + + + + + app Coverage Report > NoteMapperKt + + + + + + +
+ + +

Coverage Summary for Class: NoteMapperKt (com.stslex93.notes.feature.home.ui.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/4) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/86) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.ui.model
+ 
+ import com.stslex93.notes.feature.home.domain.model.LabelDomain
+ import com.stslex93.notes.feature.home.domain.model.NoteDomain
+ import kotlinx.collections.immutable.toImmutableSet
+ 
+ fun NoteDomain.toUI() = Note(
+     id = id,
+     title = title,
+     content = content,
+     timestamp = timestamp,
+     labels = labels.map { it.toUi() }.toImmutableSet()
+ )
+ 
+ fun Note.toDomain() = NoteDomain(
+     id = id,
+     title = title,
+     content = content,
+     timestamp = timestamp,
+     labels = labels.map { it.toDomain() }.toSet()
+ )
+ 
+ fun LabelDomain.toUi() = Label(
+     uuid = uuid,
+     title = title,
+ )
+ 
+ fun Label.toDomain() = LabelDomain(
+     uuid = uuid,
+     title = title,
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-25/index.html b/docs/reports/ns-25/index.html new file mode 100644 index 00000000..0ec1e94f --- /dev/null +++ b/docs/reports/ns-25/index.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.store + + 0% + + + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStore + + 0% + + + (0/10) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
HomeStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-25/index_SORT_BY_BLOCK.html b/docs/reports/ns-25/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..9d47921f --- /dev/null +++ b/docs/reports/ns-25/index_SORT_BY_BLOCK.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.store + + 0% + + + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStore + + 0% + + + (0/10) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
HomeStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-25/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-25/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..18708527 --- /dev/null +++ b/docs/reports/ns-25/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.store + + 0% + + + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
HomeStore + + 0% + + + (0/10) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-25/index_SORT_BY_CLASS.html b/docs/reports/ns-25/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..3c1489a0 --- /dev/null +++ b/docs/reports/ns-25/index_SORT_BY_CLASS.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.store + + 0% + + + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStore + + 0% + + + (0/10) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
HomeStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-25/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-25/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..3337a0c8 --- /dev/null +++ b/docs/reports/ns-25/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.store + + 0% + + + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
HomeStore + + 0% + + + (0/10) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-25/index_SORT_BY_LINE.html b/docs/reports/ns-25/index_SORT_BY_LINE.html new file mode 100644 index 00000000..f547266e --- /dev/null +++ b/docs/reports/ns-25/index_SORT_BY_LINE.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.store + + 0% + + + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStore + + 0% + + + (0/10) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
HomeStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-25/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-25/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..28707cd6 --- /dev/null +++ b/docs/reports/ns-25/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.store + + 0% + + + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
HomeStore + + 0% + + + (0/10) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-25/index_SORT_BY_METHOD.html b/docs/reports/ns-25/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..5fdc70b3 --- /dev/null +++ b/docs/reports/ns-25/index_SORT_BY_METHOD.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.store + + 0% + + + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStore + + 0% + + + (0/10) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
HomeStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-25/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-25/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..4724b324 --- /dev/null +++ b/docs/reports/ns-25/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.store + + 0% + + + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
HomeStore + + 0% + + + (0/10) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-25/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-25/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..0c520ef2 --- /dev/null +++ b/docs/reports/ns-25/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.store + + 0% + + + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
HomeStore + + 0% + + + (0/10) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-25/index_SORT_BY_STATEMENT.html b/docs/reports/ns-25/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..6fa02f04 --- /dev/null +++ b/docs/reports/ns-25/index_SORT_BY_STATEMENT.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.store + + 0% + + + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStore + + 0% + + + (0/10) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
HomeStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-25/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-25/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..ee067eb6 --- /dev/null +++ b/docs/reports/ns-25/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.feature.home.ui.store + + 0% + + + (0/13) + + + + 0% + + + (0/33) + + + + 0% + + + (0/16) + + + + 0% + + + (0/72) + + + + 0% + + + (0/327) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStoreImpl + + 0% + + + (0/3) + + + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
HomeStore + + 0% + + + (0/10) + + + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-25/sources/source-1.html b/docs/reports/ns-25/sources/source-1.html new file mode 100644 index 00000000..3a277c43 --- /dev/null +++ b/docs/reports/ns-25/sources/source-1.html @@ -0,0 +1,398 @@ + + + + + + + + app Coverage Report > HomeStore + + + + + + +
+ + +

Coverage Summary for Class: HomeStore (com.stslex93.notes.feature.home.ui.store)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStore$Action +
HomeStore$Action$ClearSelection + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/2) + +
HomeStore$Action$OnLabelEditClick + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/2) + +
HomeStore$Action$OnNoteClick + + 0% + + + (0/1) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/7) + +
HomeStore$Action$OnNoteFloatingButtonClick + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/2) + +
HomeStore$Action$OnNoteLongClick + + 0% + + + (0/1) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/7) + +
HomeStore$Action$QueryInput + + 0% + + + (0/1) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/7) + +
HomeStore$Event +
HomeStore$Event$Navigation +
HomeStore$Event$Navigation$CreateNote + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/2) + +
HomeStore$Event$Navigation$EditLabel + + 0% + + + (0/1) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/7) + +
HomeStore$Event$Navigation$EditNote + + 0% + + + (0/1) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/7) + +
HomeStore$State + + 0% + + + (0/1) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/17) + +
Total + + 0% + + + (0/10) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/60) + +
+ +
+
+ + Source code is not available
+
+ + + + + + diff --git a/docs/reports/ns-25/sources/source-2.html b/docs/reports/ns-25/sources/source-2.html new file mode 100644 index 00000000..fe2ee569 --- /dev/null +++ b/docs/reports/ns-25/sources/source-2.html @@ -0,0 +1,409 @@ + + + + + + + + app Coverage Report > HomeStoreImpl + + + + + + +
+ + +

Coverage Summary for Class: HomeStoreImpl (com.stslex93.notes.feature.home.ui.store)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
HomeStoreImpl + + 0% + + + (0/13) + + + + 0% + + + (0/16) + + + + 0% + + + (0/50) + + + + 0% + + + (0/231) + +
HomeStoreImpl$notes$3$1 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/7) + +
HomeStoreImpl$onNoteCreateClick$1 + + 0% + + + (0/2) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/29) + +
HomeStoreImpl$special$$inlined$flatMapLatest$1 + + 0% + + + (0/1) + + +
HomeStoreImpl$special$$inlined$map$1 + + 0% + + + (0/2) + + +
HomeStoreImpl$special$$inlined$map$1$2 + + 0% + + + (0/1) + + +
HomeStoreImpl$special$$inlined$map$1$2$1 +
HomeStoreImpl$special$$inlined$map$2 + + 0% + + + (0/2) + + +
HomeStoreImpl$special$$inlined$map$2$2 + + 0% + + + (0/1) + + +
HomeStoreImpl$special$$inlined$map$2$2$1 +
Total + + 0% + + + (0/23) + + + + 0% + + + (0/16) + + + + 0% + + + (0/54) + + + + 0% + + + (0/267) + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.ui.store
+ 
+ import androidx.paging.PagingData
+ import androidx.paging.cachedIn
+ import androidx.paging.map
+ import com.stslex93.notes.core.ui.Extensions.addItem
+ import com.stslex93.notes.core.ui.Extensions.removeItem
+ import com.stslex93.notes.core.ui.base.store.BaseStoreImpl
+ import com.stslex93.notes.feature.home.domain.interactor.HomeInteractor
+ import com.stslex93.notes.feature.home.ui.model.Note
+ import com.stslex93.notes.feature.home.ui.model.toUI
+ import com.stslex93.notes.feature.home.ui.store.HomeStore.Action
+ import com.stslex93.notes.feature.home.ui.store.HomeStore.Event
+ import com.stslex93.notes.feature.home.ui.store.HomeStore.State
+ import kotlinx.collections.immutable.persistentSetOf
+ import kotlinx.coroutines.Dispatchers
+ import kotlinx.coroutines.ExperimentalCoroutinesApi
+ import kotlinx.coroutines.flow.MutableStateFlow
+ import kotlinx.coroutines.flow.SharingStarted
+ import kotlinx.coroutines.flow.StateFlow
+ import kotlinx.coroutines.flow.distinctUntilChanged
+ import kotlinx.coroutines.flow.flatMapLatest
+ import kotlinx.coroutines.flow.flowOn
+ import kotlinx.coroutines.flow.map
+ import kotlinx.coroutines.flow.stateIn
+ import kotlinx.coroutines.launch
+ import javax.inject.Inject
+ 
+ class HomeStoreImpl @Inject constructor(
+     private val interactor: HomeInteractor
+ ) : HomeStore, BaseStoreImpl<State, Event, Action>() {
+ 
+     override val initialState = State(
+         query = "",
+         selectedNotes = persistentSetOf(),
+         notes = ::notes
+     )
+ 
+     override val state: MutableStateFlow<State> = MutableStateFlow(initialState)
+ 
+     @OptIn(ExperimentalCoroutinesApi::class)
+     private val notes: StateFlow<PagingData<Note>>
+         get() = state
+             .map { currentState ->
+                 currentState.query
+             }
+             .distinctUntilChanged()
+             .flatMapLatest(interactor::searchNotes)
+             .map { pagingData ->
+                 pagingData.map { note -> note.toUI() }
+             }
+             .cachedIn(scope)
+             .flowOn(Dispatchers.IO)
+             .stateIn(
+                 scope = scope,
+                 started = SharingStarted.Lazily,
+                 initialValue = PagingData.empty()
+             )
+ 
+     override fun processAction(action: Action) {
+         when (action) {
+             is Action.OnNoteClick -> onNoteClickAction(action)
+             is Action.OnNoteLongClick -> onNoteLongClickAction(action)
+             is Action.QueryInput -> onQueryInput(action)
+             is Action.OnNoteFloatingButtonClick -> onNoteCreateClick()
+             is Action.ClearSelection -> clearSelection()
+             is Action.OnLabelEditClick -> onLabelEditClick()
+         }
+     }
+ 
+     private fun onLabelEditClick() {
+         val selectedIds = state.value.selectedNotes
+         clearSelection()
+         sendEvent(Event.Navigation.EditLabel(selectedIds))
+     }
+ 
+     private fun clearSelection() {
+         updateState { currentState ->
+             currentState.copy(
+                 selectedNotes = persistentSetOf(),
+                 query = ""
+             )
+         }
+     }
+ 
+     private fun onNoteCreateClick() {
+         val items = state.value.selectedNotes
+         if (items.isNotEmpty()) {
+             scope.launch(Dispatchers.IO) {
+                 interactor.deleteNotes(items.toList())
+                 updateState { currentState ->
+                     currentState.copy(selectedNotes = persistentSetOf())
+                 }
+             }
+         } else {
+             sendEvent(Event.Navigation.CreateNote)
+         }
+     }
+ 
+     private fun onQueryInput(action: Action.QueryInput) {
+         updateState { currentState ->
+             currentState.copy(
+                 query = action.query
+             )
+         }
+     }
+ 
+     private fun onNoteLongClickAction(action: Action.OnNoteLongClick) {
+         updateSelectedNotes(action.id)
+     }
+ 
+     private fun onNoteClickAction(action: Action.OnNoteClick) {
+         if (state.value.selectedNotes.isNotEmpty()) {
+             updateSelectedNotes(action.id)
+         } else {
+             sendEvent(
+                 Event.Navigation.EditNote(action.id)
+             )
+         }
+     }
+ 
+     private fun updateSelectedNotes(id: Int) {
+         updateState { currentState ->
+             val selectedItems = if (currentState.selectedNotes.contains(id)) {
+                 currentState.selectedNotes.removeItem(id)
+             } else {
+                 currentState.selectedNotes.addItem(id)
+             }
+             currentState.copy(
+                 selectedNotes = selectedItems,
+             )
+         }
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-26/index.html b/docs/reports/ns-26/index.html new file mode 100644 index 00000000..d1145eb8 --- /dev/null +++ b/docs/reports/ns-26/index.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.ui

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.ui + + 0% + + + (0/2) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-26/index_SORT_BY_BLOCK.html b/docs/reports/ns-26/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..0b29a1a7 --- /dev/null +++ b/docs/reports/ns-26/index_SORT_BY_BLOCK.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.ui

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.ui + + 0% + + + (0/2) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-26/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-26/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..60e72121 --- /dev/null +++ b/docs/reports/ns-26/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.ui

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.ui + + 0% + + + (0/2) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-26/index_SORT_BY_CLASS.html b/docs/reports/ns-26/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..1bdb7ae3 --- /dev/null +++ b/docs/reports/ns-26/index_SORT_BY_CLASS.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.ui

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.ui + + 0% + + + (0/2) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-26/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-26/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..a44ed54d --- /dev/null +++ b/docs/reports/ns-26/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.ui

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.ui + + 0% + + + (0/2) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-26/index_SORT_BY_LINE.html b/docs/reports/ns-26/index_SORT_BY_LINE.html new file mode 100644 index 00000000..0b9fcd55 --- /dev/null +++ b/docs/reports/ns-26/index_SORT_BY_LINE.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.ui

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.ui + + 0% + + + (0/2) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-26/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-26/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..2392a5ef --- /dev/null +++ b/docs/reports/ns-26/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.ui

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.ui + + 0% + + + (0/2) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-26/index_SORT_BY_METHOD.html b/docs/reports/ns-26/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..d0242a9c --- /dev/null +++ b/docs/reports/ns-26/index_SORT_BY_METHOD.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.ui

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.ui + + 0% + + + (0/2) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-26/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-26/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..30dffa51 --- /dev/null +++ b/docs/reports/ns-26/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.ui

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.ui + + 0% + + + (0/2) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-26/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-26/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..66a639ec --- /dev/null +++ b/docs/reports/ns-26/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.ui

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.ui + + 0% + + + (0/2) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-26/index_SORT_BY_STATEMENT.html b/docs/reports/ns-26/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..cd6515c3 --- /dev/null +++ b/docs/reports/ns-26/index_SORT_BY_STATEMENT.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.ui

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.ui + + 0% + + + (0/2) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-26/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-26/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..ce094993 --- /dev/null +++ b/docs/reports/ns-26/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.ui

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.ui + + 0% + + + (0/2) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-26/sources/source-1.html b/docs/reports/ns-26/sources/source-1.html new file mode 100644 index 00000000..8fbd0aac --- /dev/null +++ b/docs/reports/ns-26/sources/source-1.html @@ -0,0 +1,111 @@ + + + + + + + + app Coverage Report > NavigationHostKt + + + + + + +
+ + +

Coverage Summary for Class: NavigationHostKt (com.stslex93.notes.ui)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
NavigationHostKt + + 0% + + + (0/1) + + +
+ +
+
+ + +
+ package com.stslex93.notes.ui
+ 
+ import androidx.compose.runtime.Composable
+ import androidx.compose.ui.Modifier
+ import androidx.navigation.NavHostController
+ import androidx.navigation.compose.NavHost
+ import com.stslex93.notes.core.navigation.model.AppDestination
+ import com.stslex93.notes.feature.edit.ui.init.editGraph
+ import com.stslex93.notes.feature.edit_label.navigation.graph.editLabelGraph
+ import com.stslex93.notes.feature.home.navigation.homeGraph
+ 
+ @Composable
+ fun NavigationHost(
+     navHostController: NavHostController,
+     modifier: Modifier = Modifier,
+     startDestination: AppDestination = AppDestination.HOME
+ ) {
+     NavHost(
+         navController = navHostController,
+         startDestination = startDestination.route
+     ) {
+         homeGraph(modifier)
+         editGraph(modifier)
+         editLabelGraph(modifier)
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-26/sources/source-2.html b/docs/reports/ns-26/sources/source-2.html new file mode 100644 index 00000000..dd631164 --- /dev/null +++ b/docs/reports/ns-26/sources/source-2.html @@ -0,0 +1,126 @@ + + + + + + + + app Coverage Report > AppInitKt + + + + + + +
+ + +

Coverage Summary for Class: AppInitKt (com.stslex93.notes.ui)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
AppInitKt + + 0% + + + (0/1) + + +
+ +
+
+ + +
+ package com.stslex93.notes.ui
+ 
+ import androidx.compose.foundation.background
+ import androidx.compose.foundation.isSystemInDarkTheme
+ import androidx.compose.foundation.layout.Box
+ import androidx.compose.foundation.layout.fillMaxSize
+ import androidx.compose.material3.MaterialTheme
+ import androidx.compose.runtime.Composable
+ import androidx.compose.runtime.DisposableEffect
+ import androidx.compose.ui.Modifier
+ import androidx.compose.ui.graphics.Color
+ import androidx.navigation.NavHostController
+ import com.google.accompanist.systemuicontroller.rememberSystemUiController
+ 
+ @Composable
+ fun AppInit(
+     navController: NavHostController,
+     modifier: Modifier = Modifier
+ ) {
+     val systemUiController = rememberSystemUiController()
+     val isDarkTheme = isSystemInDarkTheme()
+ 
+     DisposableEffect(systemUiController, isDarkTheme) {
+         systemUiController.setSystemBarsColor(
+             color = Color.Transparent,
+             darkIcons = isDarkTheme.not(),
+         )
+         onDispose {}
+     }
+ 
+     Box(
+         modifier = Modifier
+             .fillMaxSize()
+             .background(MaterialTheme.colorScheme.background)
+     ) {
+         NavigationHost(
+             navHostController = navController,
+             modifier = modifier
+         )
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-27/index.html b/docs/reports/ns-27/index.html new file mode 100644 index 00000000..f4a17bb1 --- /dev/null +++ b/docs/reports/ns-27/index.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.init

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.feature.home.ui.init + + 0% + + + (0/1) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-27/index_SORT_BY_BLOCK.html b/docs/reports/ns-27/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..2e5bccd0 --- /dev/null +++ b/docs/reports/ns-27/index_SORT_BY_BLOCK.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.init

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.feature.home.ui.init + + 0% + + + (0/1) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-27/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-27/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..6b90e974 --- /dev/null +++ b/docs/reports/ns-27/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.init

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.feature.home.ui.init + + 0% + + + (0/1) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-27/index_SORT_BY_CLASS.html b/docs/reports/ns-27/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..7606f06b --- /dev/null +++ b/docs/reports/ns-27/index_SORT_BY_CLASS.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.init

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.feature.home.ui.init + + 0% + + + (0/1) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-27/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-27/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..14d07c40 --- /dev/null +++ b/docs/reports/ns-27/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.init

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.feature.home.ui.init + + 0% + + + (0/1) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-27/index_SORT_BY_LINE.html b/docs/reports/ns-27/index_SORT_BY_LINE.html new file mode 100644 index 00000000..1d246734 --- /dev/null +++ b/docs/reports/ns-27/index_SORT_BY_LINE.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.init

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.feature.home.ui.init + + 0% + + + (0/1) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-27/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-27/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..5996f979 --- /dev/null +++ b/docs/reports/ns-27/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.init

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.feature.home.ui.init + + 0% + + + (0/1) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-27/index_SORT_BY_METHOD.html b/docs/reports/ns-27/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..b126f25d --- /dev/null +++ b/docs/reports/ns-27/index_SORT_BY_METHOD.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.init

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.feature.home.ui.init + + 0% + + + (0/1) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-27/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-27/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..53379217 --- /dev/null +++ b/docs/reports/ns-27/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.init

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.feature.home.ui.init + + 0% + + + (0/1) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-27/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-27/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..541623cd --- /dev/null +++ b/docs/reports/ns-27/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.init

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.feature.home.ui.init + + 0% + + + (0/1) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-27/index_SORT_BY_STATEMENT.html b/docs/reports/ns-27/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..7d23c25e --- /dev/null +++ b/docs/reports/ns-27/index_SORT_BY_STATEMENT.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.init

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.feature.home.ui.init + + 0% + + + (0/1) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-27/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-27/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..9596ce2c --- /dev/null +++ b/docs/reports/ns-27/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,93 @@ + + + + + + app Coverage Report > com.stslex93.notes.feature.home.ui.init + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.feature.home.ui.init

+ + + + + + + + + + +
Package + Method, % + + Branch, % +
com.stslex93.notes.feature.home.ui.init + + 0% + + + (0/1) + + +
+ +
+
+ + + + + + + +
+Class + Method, % + + Branch, % +
+ +
+ + + + + + diff --git a/docs/reports/ns-27/sources/source-1.html b/docs/reports/ns-27/sources/source-1.html new file mode 100644 index 00000000..0f73232d --- /dev/null +++ b/docs/reports/ns-27/sources/source-1.html @@ -0,0 +1,133 @@ + + + + + + + + app Coverage Report > HomeScreeInitKt + + + + + + +
+ + +

Coverage Summary for Class: HomeScreeInitKt (com.stslex93.notes.feature.home.ui.init)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
HomeScreeInitKt + + 0% + + + (0/1) + + +
+ +
+
+ + +
+ package com.stslex93.notes.feature.home.ui.init
+ 
+ import androidx.activity.compose.BackHandler
+ import androidx.compose.runtime.Composable
+ import androidx.compose.runtime.collectAsState
+ import androidx.compose.runtime.getValue
+ import androidx.compose.runtime.remember
+ import androidx.compose.ui.Modifier
+ import androidx.paging.compose.collectAsLazyPagingItems
+ import com.stslex93.notes.core.ui.Extensions.CollectAsEvent
+ import com.stslex93.notes.feature.home.ui.HomeScreen
+ import com.stslex93.notes.feature.home.ui.HomeViewModel
+ import com.stslex93.notes.feature.home.ui.store.HomeStore
+ import com.stslex93.notes.feature.home.ui.store.HomeStore.Action
+ 
+ @Composable
+ fun HomeScreeInit(
+     viewModel: HomeViewModel,
+     modifier: Modifier = Modifier
+ ) {
+     viewModel.event.CollectAsEvent { event ->
+         when (event) {
+             is HomeStore.Event.Navigation -> viewModel.processNavigation(event)
+         }
+     }
+ 
+     val state by remember {
+         viewModel.state
+     }.collectAsState()
+ 
+     val notes = remember {
+         state.notes()
+     }.collectAsLazyPagingItems()
+ 
+     BackHandler(
+         enabled = state.selectedNotes.isNotEmpty() || state.query.isNotEmpty()
+     ) {
+         viewModel.sendAction(Action.ClearSelection)
+     }
+ 
+     HomeScreen(
+         modifier = modifier,
+         notes = notes,
+         selectedNotes = state.selectedNotes,
+         query = state.query,
+         sendAction = viewModel::sendAction
+     )
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-3/index.html b/docs/reports/ns-3/index.html new file mode 100644 index 00000000..15bc304b --- /dev/null +++ b/docs/reports/ns-3/index.html @@ -0,0 +1,306 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.database + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.database

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AutoMigrations + + 0% + + + (0/2) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
NoteRoomDatabase + + 50% + + + (1/2) + + + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
NoteRoomDatabase_Impl + + 100% + + + (2/2) + + + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-3/index_SORT_BY_BLOCK.html b/docs/reports/ns-3/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..0e086e90 --- /dev/null +++ b/docs/reports/ns-3/index_SORT_BY_BLOCK.html @@ -0,0 +1,306 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.database + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.database

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AutoMigrations + + 0% + + + (0/2) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
NoteRoomDatabase + + 50% + + + (1/2) + + + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
NoteRoomDatabase_Impl + + 100% + + + (2/2) + + + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-3/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-3/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..8af65b6a --- /dev/null +++ b/docs/reports/ns-3/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,306 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.database + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.database

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
NoteRoomDatabase_Impl + + 100% + + + (2/2) + + + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
NoteRoomDatabase + + 50% + + + (1/2) + + + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
AutoMigrations + + 0% + + + (0/2) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-3/index_SORT_BY_CLASS.html b/docs/reports/ns-3/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..c84e5c67 --- /dev/null +++ b/docs/reports/ns-3/index_SORT_BY_CLASS.html @@ -0,0 +1,306 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.database + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.database

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AutoMigrations + + 0% + + + (0/2) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
NoteRoomDatabase + + 50% + + + (1/2) + + + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
NoteRoomDatabase_Impl + + 100% + + + (2/2) + + + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-3/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-3/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..29b6ff21 --- /dev/null +++ b/docs/reports/ns-3/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,306 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.database + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.database

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRoomDatabase_Impl + + 100% + + + (2/2) + + + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
NoteRoomDatabase + + 50% + + + (1/2) + + + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
AutoMigrations + + 0% + + + (0/2) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-3/index_SORT_BY_LINE.html b/docs/reports/ns-3/index_SORT_BY_LINE.html new file mode 100644 index 00000000..2949d964 --- /dev/null +++ b/docs/reports/ns-3/index_SORT_BY_LINE.html @@ -0,0 +1,306 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.database + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.database

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AutoMigrations + + 0% + + + (0/2) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
NoteRoomDatabase + + 50% + + + (1/2) + + + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
NoteRoomDatabase_Impl + + 100% + + + (2/2) + + + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-3/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-3/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..09007478 --- /dev/null +++ b/docs/reports/ns-3/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,306 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.database + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.database

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
NoteRoomDatabase_Impl + + 100% + + + (2/2) + + + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
NoteRoomDatabase + + 50% + + + (1/2) + + + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
AutoMigrations + + 0% + + + (0/2) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-3/index_SORT_BY_METHOD.html b/docs/reports/ns-3/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..a75ab0f4 --- /dev/null +++ b/docs/reports/ns-3/index_SORT_BY_METHOD.html @@ -0,0 +1,306 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.database + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.database

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AutoMigrations + + 0% + + + (0/2) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
NoteRoomDatabase + + 50% + + + (1/2) + + + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
NoteRoomDatabase_Impl + + 100% + + + (2/2) + + + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-3/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-3/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..05b0dd87 --- /dev/null +++ b/docs/reports/ns-3/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,306 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.database + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.database

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
NoteRoomDatabase_Impl + + 100% + + + (2/2) + + + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
NoteRoomDatabase + + 50% + + + (1/2) + + + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
AutoMigrations + + 0% + + + (0/2) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-3/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-3/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..6196877d --- /dev/null +++ b/docs/reports/ns-3/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,306 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.database + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.database

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRoomDatabase_Impl + + 100% + + + (2/2) + + + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
NoteRoomDatabase + + 50% + + + (1/2) + + + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
AutoMigrations + + 0% + + + (0/2) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-3/index_SORT_BY_STATEMENT.html b/docs/reports/ns-3/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..81a5e9b5 --- /dev/null +++ b/docs/reports/ns-3/index_SORT_BY_STATEMENT.html @@ -0,0 +1,306 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.database + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.database

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AutoMigrations + + 0% + + + (0/2) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
NoteRoomDatabase_Impl + + 100% + + + (2/2) + + + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
NoteRoomDatabase + + 50% + + + (1/2) + + + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-3/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-3/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..5457819b --- /dev/null +++ b/docs/reports/ns-3/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,306 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.database + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.database

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.database + + 57.1% + + + (4/7) + + + + 69.2% + + + (18/26) + + + + 25% + + + (2/8) + + + + 39.8% + + + (33/83) + + + + 18.6% + + + (50/269) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
NoteRoomDatabase + + 50% + + + (1/2) + + + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
NoteRoomDatabase_Impl + + 100% + + + (2/2) + + + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
AutoMigrations + + 0% + + + (0/2) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-3/sources/source-1.html b/docs/reports/ns-3/sources/source-1.html new file mode 100644 index 00000000..991b52e4 --- /dev/null +++ b/docs/reports/ns-3/sources/source-1.html @@ -0,0 +1,173 @@ + + + + + + + + app Coverage Report > AutoMigrations + + + + + + +
+ + +

Coverage Summary for Class: AutoMigrations (com.stslex93.notes.core.database.database)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
AutoMigrations + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/6) + +
AutoMigrations$AUTO_MIGRATION_1_2$1 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/8) + +
Total + + 0% + + + (0/2) + + + + + 0% + + + (0/2) + + + + 0% + + + (0/14) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.database.database
+ 
+ import androidx.room.migration.AutoMigrationSpec
+ 
+ object AutoMigrations {
+ 
+     val AUTO_MIGRATION_1_2 = object : AutoMigrationSpec {}
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-3/sources/source-2.html b/docs/reports/ns-3/sources/source-2.html new file mode 100644 index 00000000..7f1271ff --- /dev/null +++ b/docs/reports/ns-3/sources/source-2.html @@ -0,0 +1,149 @@ + + + + + + + + app Coverage Report > Converters + + + + + + +
+ + +

Coverage Summary for Class: Converters (com.stslex93.notes.core.database.database)

+ + + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Converters + + 100% + + + (1/1) + + + + 100% + + + (3/3) + + + + 50% + + + (2/4) + + + + 80% + + + (4/5) + + + + 87.1% + + + (27/31) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.database.database
+ 
+ import androidx.room.TypeConverter
+ import com.google.gson.Gson
+ 
+ class Converters {
+ 
+     @TypeConverter
+     fun jsonListString(
+         value: Set<String>?
+     ): String = Gson().toJson(value ?: emptySet<String>())
+ 
+     @TypeConverter
+     fun jsonToListString(
+         value: String
+     ): Set<String> = if (value.isBlank()) {
+         emptySet()
+     } else {
+         Gson().fromJson(value, Array<String>::class.java).toSet()
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-3/sources/source-3.html b/docs/reports/ns-3/sources/source-3.html new file mode 100644 index 00000000..e072899e --- /dev/null +++ b/docs/reports/ns-3/sources/source-3.html @@ -0,0 +1,205 @@ + + + + + + + + app Coverage Report > NoteRoomDatabase + + + + + + +
+ + +

Coverage Summary for Class: NoteRoomDatabase (com.stslex93.notes.core.database.database)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRoomDatabase + + 100% + + + (1/1) + + + + + 100% + + + (1/1) + + + + 100% + + + (2/2) + +
NoteRoomDatabase$Companion + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/6) + +
Total + + 50% + + + (1/2) + + + + + 16.7% + + + (1/6) + + + + 25% + + + (2/8) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.database.database
+ 
+ import android.content.Context
+ import androidx.room.Database
+ import androidx.room.Room
+ import androidx.room.RoomDatabase
+ import androidx.room.TypeConverters
+ import com.stslex93.notes.core.database.label.LabelDao
+ import com.stslex93.notes.core.database.label.LabelEntity
+ import com.stslex93.notes.core.database.note.NoteDao
+ import com.stslex93.notes.core.database.note.NoteEntity
+ 
+ @Database(
+     entities = [
+         NoteEntity::class,
+         LabelEntity::class
+     ],
+     version = 1,
+     exportSchema = false,
+ )
+ @TypeConverters(Converters::class)
+ abstract class NoteRoomDatabase : RoomDatabase() {
+ 
+     abstract val noteDao: NoteDao
+     abstract val labelDao: LabelDao
+ 
+     companion object {
+         private const val DB_NAME = "db.note"
+ 
+         fun build(
+             context: Context
+         ) = Room
+             .databaseBuilder(
+                 context,
+                 NoteRoomDatabase::class.java,
+                 DB_NAME
+             )
+             .build()
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-3/sources/source-4.html b/docs/reports/ns-3/sources/source-4.html new file mode 100644 index 00000000..ef62ad11 --- /dev/null +++ b/docs/reports/ns-3/sources/source-4.html @@ -0,0 +1,330 @@ + + + + + + + + app Coverage Report > NoteRoomDatabase_Impl + + + + + + +
+ + +

Coverage Summary for Class: NoteRoomDatabase_Impl (com.stslex93.notes.core.database.database)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRoomDatabase_Impl + + 90.9% + + + (10/11) + + + + + 95.2% + + + (20/21) + +
NoteRoomDatabase_Impl$createOpenDelegate$_openDelegate$1 + + 50% + + + (4/8) + + + + 0% + + + (0/4) + + + + 16.3% + + + (8/49) + + + + 9.7% + + + (21/216) + +
Total + + 73.7% + + + (14/19) + + + + 0% + + + (0/4) + + + + 40% + + + (28/70) + + + + 9.7% + + + (21/216) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.database.database
+ 
+ import androidx.room.InvalidationTracker
+ import androidx.room.RoomOpenDelegate
+ import androidx.room.migration.AutoMigrationSpec
+ import androidx.room.migration.Migration
+ import androidx.room.util.TableInfo
+ import androidx.room.util.TableInfo.Companion.read
+ import androidx.room.util.dropFtsSyncTriggers
+ import androidx.sqlite.SQLiteConnection
+ import androidx.sqlite.execSQL
+ import com.stslex93.notes.core.database.label.LabelDao
+ import com.stslex93.notes.core.database.label.LabelDao_Impl
+ import com.stslex93.notes.core.database.note.NoteDao
+ import com.stslex93.notes.core.database.note.NoteDao_Impl
+ import javax.`annotation`.processing.Generated
+ import kotlin.Lazy
+ import kotlin.String
+ import kotlin.Suppress
+ import kotlin.collections.List
+ import kotlin.collections.Map
+ import kotlin.collections.MutableList
+ import kotlin.collections.MutableMap
+ import kotlin.collections.MutableSet
+ import kotlin.collections.Set
+ import kotlin.collections.mutableListOf
+ import kotlin.collections.mutableMapOf
+ import kotlin.collections.mutableSetOf
+ import kotlin.reflect.KClass
+ 
+ @Generated(value = ["androidx.room.RoomProcessor"])
+ @Suppress(names = ["UNCHECKED_CAST", "DEPRECATION", "REDUNDANT_PROJECTION", "REMOVAL"])
+ public class NoteRoomDatabase_Impl : NoteRoomDatabase() {
+   private val _noteDao: Lazy<NoteDao> = lazy {
+     NoteDao_Impl(this)
+   }
+ 
+   public override val noteDao: NoteDao
+     get() = _noteDao.value
+ 
+   private val _labelDao: Lazy<LabelDao> = lazy {
+     LabelDao_Impl(this)
+   }
+ 
+   public override val labelDao: LabelDao
+     get() = _labelDao.value
+ 
+   protected override fun createOpenDelegate(): RoomOpenDelegate {
+     val _openDelegate: RoomOpenDelegate = object : RoomOpenDelegate(1,
+         "b3bde1daf05e319c00abbbbdffb31382", "1d2997d19ed2b80705fa11ce4974fdb4") {
+       public override fun createAllTables(connection: SQLiteConnection) {
+         connection.execSQL("CREATE TABLE IF NOT EXISTS `note_table` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `title` TEXT NOT NULL, `content` TEXT NOT NULL, `timestamp` INTEGER NOT NULL, `labels` TEXT NOT NULL)")
+         connection.execSQL("CREATE TABLE IF NOT EXISTS `label_table` (`uuid` TEXT NOT NULL, `title` TEXT NOT NULL, `timestamp` TEXT NOT NULL, PRIMARY KEY(`uuid`))")
+         connection.execSQL("CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)")
+         connection.execSQL("INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, 'b3bde1daf05e319c00abbbbdffb31382')")
+       }
+ 
+       public override fun dropAllTables(connection: SQLiteConnection) {
+         connection.execSQL("DROP TABLE IF EXISTS `note_table`")
+         connection.execSQL("DROP TABLE IF EXISTS `label_table`")
+       }
+ 
+       public override fun onCreate(connection: SQLiteConnection) {
+       }
+ 
+       public override fun onOpen(connection: SQLiteConnection) {
+         internalInitInvalidationTracker(connection)
+       }
+ 
+       public override fun onPreMigrate(connection: SQLiteConnection) {
+         dropFtsSyncTriggers(connection)
+       }
+ 
+       public override fun onPostMigrate(connection: SQLiteConnection) {
+       }
+ 
+       public override fun onValidateSchema(connection: SQLiteConnection):
+           RoomOpenDelegate.ValidationResult {
+         val _columnsNoteTable: MutableMap<String, TableInfo.Column> = mutableMapOf()
+         _columnsNoteTable.put("id", TableInfo.Column("id", "INTEGER", true, 1, null,
+             TableInfo.CREATED_FROM_ENTITY))
+         _columnsNoteTable.put("title", TableInfo.Column("title", "TEXT", true, 0, null,
+             TableInfo.CREATED_FROM_ENTITY))
+         _columnsNoteTable.put("content", TableInfo.Column("content", "TEXT", true, 0, null,
+             TableInfo.CREATED_FROM_ENTITY))
+         _columnsNoteTable.put("timestamp", TableInfo.Column("timestamp", "INTEGER", true, 0, null,
+             TableInfo.CREATED_FROM_ENTITY))
+         _columnsNoteTable.put("labels", TableInfo.Column("labels", "TEXT", true, 0, null,
+             TableInfo.CREATED_FROM_ENTITY))
+         val _foreignKeysNoteTable: MutableSet<TableInfo.ForeignKey> = mutableSetOf()
+         val _indicesNoteTable: MutableSet<TableInfo.Index> = mutableSetOf()
+         val _infoNoteTable: TableInfo = TableInfo("note_table", _columnsNoteTable,
+             _foreignKeysNoteTable, _indicesNoteTable)
+         val _existingNoteTable: TableInfo = read(connection, "note_table")
+         if (!_infoNoteTable.equals(_existingNoteTable)) {
+           return RoomOpenDelegate.ValidationResult(false, """
+               |note_table(com.stslex93.notes.core.database.note.NoteEntity).
+               | Expected:
+               |""".trimMargin() + _infoNoteTable + """
+               |
+               | Found:
+               |""".trimMargin() + _existingNoteTable)
+         }
+         val _columnsLabelTable: MutableMap<String, TableInfo.Column> = mutableMapOf()
+         _columnsLabelTable.put("uuid", TableInfo.Column("uuid", "TEXT", true, 1, null,
+             TableInfo.CREATED_FROM_ENTITY))
+         _columnsLabelTable.put("title", TableInfo.Column("title", "TEXT", true, 0, null,
+             TableInfo.CREATED_FROM_ENTITY))
+         _columnsLabelTable.put("timestamp", TableInfo.Column("timestamp", "TEXT", true, 0, null,
+             TableInfo.CREATED_FROM_ENTITY))
+         val _foreignKeysLabelTable: MutableSet<TableInfo.ForeignKey> = mutableSetOf()
+         val _indicesLabelTable: MutableSet<TableInfo.Index> = mutableSetOf()
+         val _infoLabelTable: TableInfo = TableInfo("label_table", _columnsLabelTable,
+             _foreignKeysLabelTable, _indicesLabelTable)
+         val _existingLabelTable: TableInfo = read(connection, "label_table")
+         if (!_infoLabelTable.equals(_existingLabelTable)) {
+           return RoomOpenDelegate.ValidationResult(false, """
+               |label_table(com.stslex93.notes.core.database.label.LabelEntity).
+               | Expected:
+               |""".trimMargin() + _infoLabelTable + """
+               |
+               | Found:
+               |""".trimMargin() + _existingLabelTable)
+         }
+         return RoomOpenDelegate.ValidationResult(true, null)
+       }
+     }
+     return _openDelegate
+   }
+ 
+   protected override fun createInvalidationTracker(): InvalidationTracker {
+     val _shadowTablesMap: MutableMap<String, String> = mutableMapOf()
+     val _viewTables: MutableMap<String, Set<String>> = mutableMapOf()
+     return InvalidationTracker(this, _shadowTablesMap, _viewTables, "note_table", "label_table")
+   }
+ 
+   public override fun clearAllTables() {
+     super.performClear(false, "note_table", "label_table")
+   }
+ 
+   protected override fun getRequiredTypeConverterClasses(): Map<KClass<*>, List<KClass<*>>> {
+     val _typeConvertersMap: MutableMap<KClass<*>, List<KClass<*>>> = mutableMapOf()
+     _typeConvertersMap.put(NoteDao::class, NoteDao_Impl.getRequiredConverters())
+     _typeConvertersMap.put(LabelDao::class, LabelDao_Impl.getRequiredConverters())
+     return _typeConvertersMap
+   }
+ 
+   public override fun getRequiredAutoMigrationSpecClasses(): Set<KClass<out AutoMigrationSpec>> {
+     val _autoMigrationSpecsSet: MutableSet<KClass<out AutoMigrationSpec>> = mutableSetOf()
+     return _autoMigrationSpecsSet
+   }
+ 
+   public override
+       fun createAutoMigrations(autoMigrationSpecs: Map<KClass<out AutoMigrationSpec>, AutoMigrationSpec>):
+       List<Migration> {
+     val _autoMigrations: MutableList<Migration> = mutableListOf()
+     return _autoMigrations
+   }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-4/index.html b/docs/reports/ns-4/index.html new file mode 100644 index 00000000..1443fe46 --- /dev/null +++ b/docs/reports/ns-4/index.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.label + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.label

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-4/index_SORT_BY_BLOCK.html b/docs/reports/ns-4/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..4efaac63 --- /dev/null +++ b/docs/reports/ns-4/index_SORT_BY_BLOCK.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.label + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.label

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-4/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-4/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..6a558c9b --- /dev/null +++ b/docs/reports/ns-4/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.label + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.label

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-4/index_SORT_BY_CLASS.html b/docs/reports/ns-4/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..ec9f68b5 --- /dev/null +++ b/docs/reports/ns-4/index_SORT_BY_CLASS.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.label + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.label

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-4/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-4/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..2921ddbe --- /dev/null +++ b/docs/reports/ns-4/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.label + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.label

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-4/index_SORT_BY_LINE.html b/docs/reports/ns-4/index_SORT_BY_LINE.html new file mode 100644 index 00000000..e46b6f00 --- /dev/null +++ b/docs/reports/ns-4/index_SORT_BY_LINE.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.label + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.label

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-4/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-4/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..0d1f4cd2 --- /dev/null +++ b/docs/reports/ns-4/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.label + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.label

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-4/index_SORT_BY_METHOD.html b/docs/reports/ns-4/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..2c771ae4 --- /dev/null +++ b/docs/reports/ns-4/index_SORT_BY_METHOD.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.label + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.label

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-4/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-4/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..30d94f61 --- /dev/null +++ b/docs/reports/ns-4/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.label + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.label

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-4/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-4/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..ec8306d0 --- /dev/null +++ b/docs/reports/ns-4/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.label + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.label

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-4/index_SORT_BY_STATEMENT.html b/docs/reports/ns-4/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..f6fc3531 --- /dev/null +++ b/docs/reports/ns-4/index_SORT_BY_STATEMENT.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.label + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.label

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-4/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-4/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..8f42042c --- /dev/null +++ b/docs/reports/ns-4/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.label + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.label

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.label + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 75% + + + (3/4) + + + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-4/sources/source-1.html b/docs/reports/ns-4/sources/source-1.html new file mode 100644 index 00000000..3879a1f5 --- /dev/null +++ b/docs/reports/ns-4/sources/source-1.html @@ -0,0 +1,376 @@ + + + + + + + + app Coverage Report > LabelDao_Impl + + + + + + +
+ + +

Coverage Summary for Class: LabelDao_Impl (com.stslex93.notes.core.database.label)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDao_Impl + + 11.1% + + + (1/9) + + + + 0% + + + (0/4) + + + + 10.4% + + + (5/48) + +
LabelDao_Impl$1 + + 33.3% + + + (1/3) + + + + + 20% + + + (1/5) + + + + 11.1% + + + (2/18) + +
LabelDao_Impl$Companion + + 100% + + + (1/1) + + + + + 100% + + + (1/1) + + + + 100% + + + (1/1) + +
LabelDao_Impl$search$1 + + 0% + + + (0/3) + + + + 0% + + + (0/2) + + + + 0% + + + (0/20) + + + + 0% + + + (0/84) + +
Total + + 18.8% + + + (3/16) + + + + 0% + + + (0/6) + + + + 9.5% + + + (7/74) + + + + 2.9% + + + (3/103) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.database.label
+ 
+ import androidx.paging.PagingSource
+ import androidx.room.EntityInsertAdapter
+ import androidx.room.RoomDatabase
+ import androidx.room.RoomRawQuery
+ import androidx.room.paging.LimitOffsetPagingSource
+ import androidx.room.util.appendPlaceholders
+ import androidx.room.util.getColumnIndexOrThrow
+ import androidx.room.util.performBlocking
+ import androidx.room.util.performSuspending
+ import androidx.sqlite.SQLiteStatement
+ import javax.`annotation`.processing.Generated
+ import kotlin.Int
+ import kotlin.String
+ import kotlin.Suppress
+ import kotlin.Unit
+ import kotlin.collections.List
+ import kotlin.collections.MutableList
+ import kotlin.collections.Set
+ import kotlin.collections.mutableListOf
+ import kotlin.reflect.KClass
+ import kotlin.text.StringBuilder
+ 
+ @Generated(value = ["androidx.room.RoomProcessor"])
+ @Suppress(names = ["UNCHECKED_CAST", "DEPRECATION", "REDUNDANT_PROJECTION", "REMOVAL"])
+ public class LabelDao_Impl(
+   __db: RoomDatabase,
+ ) : LabelDao {
+   private val __db: RoomDatabase
+ 
+   private val __insertAdapterOfLabelEntity: EntityInsertAdapter<LabelEntity>
+   init {
+     this.__db = __db
+     this.__insertAdapterOfLabelEntity = object : EntityInsertAdapter<LabelEntity>() {
+       protected override fun createQuery(): String =
+           "INSERT OR REPLACE INTO `label_table` (`uuid`,`title`,`timestamp`) VALUES (?,?,?)"
+ 
+       protected override fun bind(statement: SQLiteStatement, entity: LabelEntity) {
+         statement.bindText(1, entity.uuid)
+         statement.bindText(2, entity.title)
+         statement.bindText(3, entity.timestamp)
+       }
+     }
+   }
+ 
+   public override suspend fun addLabel(label: LabelEntity): Unit = performSuspending(__db, false,
+       true) { _connection ->
+     __insertAdapterOfLabelEntity.insert(_connection, label)
+   }
+ 
+   public override fun getLabels(uuids: Set<String>): List<LabelEntity> {
+     val _stringBuilder: StringBuilder = StringBuilder()
+     _stringBuilder.append("SELECT * FROM label_table WHERE uuid in (")
+     val _inputSize: Int = uuids.size
+     appendPlaceholders(_stringBuilder, _inputSize)
+     _stringBuilder.append(")")
+     val _sql: String = _stringBuilder.toString()
+     return performBlocking(__db, true, false) { _connection ->
+       val _stmt: SQLiteStatement = _connection.prepare(_sql)
+       try {
+         var _argIndex: Int = 1
+         for (_item: String in uuids) {
+           _stmt.bindText(_argIndex, _item)
+           _argIndex++
+         }
+         val _columnIndexOfUuid: Int = getColumnIndexOrThrow(_stmt, "uuid")
+         val _columnIndexOfTitle: Int = getColumnIndexOrThrow(_stmt, "title")
+         val _columnIndexOfTimestamp: Int = getColumnIndexOrThrow(_stmt, "timestamp")
+         val _result: MutableList<LabelEntity> = mutableListOf()
+         while (_stmt.step()) {
+           val _item_1: LabelEntity
+           val _tmpUuid: String
+           _tmpUuid = _stmt.getText(_columnIndexOfUuid)
+           val _tmpTitle: String
+           _tmpTitle = _stmt.getText(_columnIndexOfTitle)
+           val _tmpTimestamp: String
+           _tmpTimestamp = _stmt.getText(_columnIndexOfTimestamp)
+           _item_1 = LabelEntity(_tmpUuid,_tmpTitle,_tmpTimestamp)
+           _result.add(_item_1)
+         }
+         _result
+       } finally {
+         _stmt.close()
+       }
+     }
+   }
+ 
+   public override fun search(query: String): PagingSource<Int, LabelEntity> {
+     val _sql: String =
+         "SELECT * FROM label_table WHERE title LIKE '%' || ? || '%'ORDER BY timestamp DESC"
+     val _rawQuery: RoomRawQuery = RoomRawQuery(_sql) { _stmt ->
+       var _argIndex: Int = 1
+       _stmt.bindText(_argIndex, query)
+     }
+     return object : LimitOffsetPagingSource<LabelEntity>(_rawQuery, __db, "label_table") {
+       protected override suspend fun convertRows(limitOffsetQuery: RoomRawQuery, itemCount: Int):
+           List<LabelEntity> = performSuspending(__db, true, false) { _connection ->
+         val _stmt: SQLiteStatement = _connection.prepare(limitOffsetQuery.sql)
+         limitOffsetQuery.getBindingFunction().invoke(_stmt)
+         try {
+           val _columnIndexOfUuid: Int = getColumnIndexOrThrow(_stmt, "uuid")
+           val _columnIndexOfTitle: Int = getColumnIndexOrThrow(_stmt, "title")
+           val _columnIndexOfTimestamp: Int = getColumnIndexOrThrow(_stmt, "timestamp")
+           val _result: MutableList<LabelEntity> = mutableListOf()
+           while (_stmt.step()) {
+             val _item: LabelEntity
+             val _tmpUuid: String
+             _tmpUuid = _stmt.getText(_columnIndexOfUuid)
+             val _tmpTitle: String
+             _tmpTitle = _stmt.getText(_columnIndexOfTitle)
+             val _tmpTimestamp: String
+             _tmpTimestamp = _stmt.getText(_columnIndexOfTimestamp)
+             _item = LabelEntity(_tmpUuid,_tmpTitle,_tmpTimestamp)
+             _result.add(_item)
+           }
+           _result
+         } finally {
+           _stmt.close()
+         }
+       }
+     }
+   }
+ 
+   public override suspend fun removeLabel(uuid: String) {
+     val _sql: String = "DELETE from label_table WHERE uuid = ?"
+     return performSuspending(__db, false, true) { _connection ->
+       val _stmt: SQLiteStatement = _connection.prepare(_sql)
+       try {
+         var _argIndex: Int = 1
+         _stmt.bindText(_argIndex, uuid)
+         _stmt.step()
+       } finally {
+         _stmt.close()
+       }
+     }
+   }
+ 
+   public companion object {
+     public fun getRequiredConverters(): List<KClass<*>> = emptyList()
+   }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-4/sources/source-2.html b/docs/reports/ns-4/sources/source-2.html new file mode 100644 index 00000000..0f2c66fa --- /dev/null +++ b/docs/reports/ns-4/sources/source-2.html @@ -0,0 +1,100 @@ + + + + + + + + app Coverage Report > LabelDao + + + + + + +
+ + +

Coverage Summary for Class: LabelDao (com.stslex93.notes.core.database.label)

+ + + + + + + + + + +
Class + Branch, % +
LabelDao +
+ +
+
+ + +
+ package com.stslex93.notes.core.database.label
+ 
+ import androidx.paging.PagingSource
+ import androidx.room.Dao
+ import androidx.room.Insert
+ import androidx.room.OnConflictStrategy
+ import androidx.room.Query
+ 
+ @Dao
+ interface LabelDao {
+ 
+     @Query("SELECT * FROM label_table WHERE uuid in (:uuids)")
+     fun getLabels(uuids: Set<String>): List<LabelEntity>
+ 
+     @Query(
+         "SELECT * FROM label_table " +
+                 "WHERE title LIKE '%' || :query || '%'" +
+                 "ORDER BY timestamp DESC"
+     )
+     fun search(query: String): PagingSource<Int, LabelEntity>
+ 
+     @Query("DELETE from label_table WHERE uuid = :uuid")
+     suspend fun removeLabel(uuid: String)
+ 
+     @Insert(onConflict = OnConflictStrategy.REPLACE)
+     suspend fun addLabel(label: LabelEntity)
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-5/index.html b/docs/reports/ns-5/index.html new file mode 100644 index 00000000..86acdb65 --- /dev/null +++ b/docs/reports/ns-5/index.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.note + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.note

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-5/index_SORT_BY_BLOCK.html b/docs/reports/ns-5/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..32be3601 --- /dev/null +++ b/docs/reports/ns-5/index_SORT_BY_BLOCK.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.note + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.note

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-5/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-5/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..e9a14414 --- /dev/null +++ b/docs/reports/ns-5/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.note + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.note

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-5/index_SORT_BY_CLASS.html b/docs/reports/ns-5/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..5a78a293 --- /dev/null +++ b/docs/reports/ns-5/index_SORT_BY_CLASS.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.note + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.note

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-5/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-5/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..93fb766c --- /dev/null +++ b/docs/reports/ns-5/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.note + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.note

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-5/index_SORT_BY_LINE.html b/docs/reports/ns-5/index_SORT_BY_LINE.html new file mode 100644 index 00000000..42129ea0 --- /dev/null +++ b/docs/reports/ns-5/index_SORT_BY_LINE.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.note + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.note

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-5/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-5/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..1c8d982f --- /dev/null +++ b/docs/reports/ns-5/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.note + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.note

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-5/index_SORT_BY_METHOD.html b/docs/reports/ns-5/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..24faff87 --- /dev/null +++ b/docs/reports/ns-5/index_SORT_BY_METHOD.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.note + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.note

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-5/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-5/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..200985d4 --- /dev/null +++ b/docs/reports/ns-5/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.note + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.note

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-5/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-5/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..73f12a74 --- /dev/null +++ b/docs/reports/ns-5/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.note + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.note

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-5/index_SORT_BY_STATEMENT.html b/docs/reports/ns-5/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..124fbccb --- /dev/null +++ b/docs/reports/ns-5/index_SORT_BY_STATEMENT.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.note + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.note

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-5/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-5/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..41669c36 --- /dev/null +++ b/docs/reports/ns-5/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.database.note + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.database.note

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.database.note + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (4/4) + + + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-5/sources/source-1.html b/docs/reports/ns-5/sources/source-1.html new file mode 100644 index 00000000..f6e94b2d --- /dev/null +++ b/docs/reports/ns-5/sources/source-1.html @@ -0,0 +1,532 @@ + + + + + + + + app Coverage Report > NoteDao_Impl + + + + + + +
+ + +

Coverage Summary for Class: NoteDao_Impl (com.stslex93.notes.core.database.note)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDao_Impl + + 100% + + + (17/17) + + + + 83.3% + + + (10/12) + + + + 98.7% + + + (150/152) + +
NoteDao_Impl$1 + + 100% + + + (3/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (35/35) + +
NoteDao_Impl$Companion + + 100% + + + (1/1) + + + + + 100% + + + (1/1) + + + + 100% + + + (1/1) + +
NoteDao_Impl$getAll$1 + + 100% + + + (3/3) + + + + 100% + + + (2/2) + + + + 100% + + + (28/28) + + + + 100% + + + (116/116) + +
Total + + 100% + + + (24/24) + + + + 85.7% + + + (12/14) + + + + 98.9% + + + (187/189) + + + + 100% + + + (152/152) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.database.note
+ 
+ import androidx.paging.PagingSource
+ import androidx.room.EntityInsertAdapter
+ import androidx.room.RoomDatabase
+ import androidx.room.RoomRawQuery
+ import androidx.room.coroutines.createFlow
+ import androidx.room.paging.LimitOffsetPagingSource
+ import androidx.room.util.appendPlaceholders
+ import androidx.room.util.getColumnIndexOrThrow
+ import androidx.room.util.performBlocking
+ import androidx.room.util.performSuspending
+ import androidx.sqlite.SQLiteStatement
+ import com.stslex93.notes.core.database.database.Converters
+ import javax.`annotation`.processing.Generated
+ import kotlin.Int
+ import kotlin.Long
+ import kotlin.String
+ import kotlin.Suppress
+ import kotlin.Unit
+ import kotlin.collections.List
+ import kotlin.collections.MutableList
+ import kotlin.collections.Set
+ import kotlin.collections.mutableListOf
+ import kotlin.reflect.KClass
+ import kotlin.text.StringBuilder
+ import kotlinx.coroutines.flow.Flow
+ 
+ @Generated(value = ["androidx.room.RoomProcessor"])
+ @Suppress(names = ["UNCHECKED_CAST", "DEPRECATION", "REDUNDANT_PROJECTION", "REMOVAL"])
+ public class NoteDao_Impl(
+   __db: RoomDatabase,
+ ) : NoteDao {
+   private val __db: RoomDatabase
+ 
+   private val __insertAdapterOfNoteEntity: EntityInsertAdapter<NoteEntity>
+ 
+   private val __converters: Converters = Converters()
+   init {
+     this.__db = __db
+     this.__insertAdapterOfNoteEntity = object : EntityInsertAdapter<NoteEntity>() {
+       protected override fun createQuery(): String =
+           "INSERT OR REPLACE INTO `note_table` (`id`,`title`,`content`,`timestamp`,`labels`) VALUES (nullif(?, 0),?,?,?,?)"
+ 
+       protected override fun bind(statement: SQLiteStatement, entity: NoteEntity) {
+         statement.bindLong(1, entity.id.toLong())
+         statement.bindText(2, entity.title)
+         statement.bindText(3, entity.content)
+         statement.bindLong(4, entity.timestamp)
+         val _tmp: String = __converters.jsonListString(entity.labels)
+         statement.bindText(5, _tmp)
+       }
+     }
+   }
+ 
+   public override suspend fun insert(note: NoteEntity): Unit = performSuspending(__db, false, true)
+       { _connection ->
+     __insertAdapterOfNoteEntity.insert(_connection, note)
+   }
+ 
+   public override fun getAll(query: String): PagingSource<Int, NoteEntity> {
+     val _sql: String =
+         "SELECT * FROM note_table WHERE title LIKE '%' || ? || '%' OR content LIKE '%' || ? || '%' ORDER BY timestamp DESC"
+     val _rawQuery: RoomRawQuery = RoomRawQuery(_sql) { _stmt ->
+       var _argIndex: Int = 1
+       _stmt.bindText(_argIndex, query)
+       _argIndex = 2
+       _stmt.bindText(_argIndex, query)
+     }
+     return object : LimitOffsetPagingSource<NoteEntity>(_rawQuery, __db, "note_table") {
+       protected override suspend fun convertRows(limitOffsetQuery: RoomRawQuery, itemCount: Int):
+           List<NoteEntity> = performSuspending(__db, true, false) { _connection ->
+         val _stmt: SQLiteStatement = _connection.prepare(limitOffsetQuery.sql)
+         limitOffsetQuery.getBindingFunction().invoke(_stmt)
+         try {
+           val _columnIndexOfId: Int = getColumnIndexOrThrow(_stmt, "id")
+           val _columnIndexOfTitle: Int = getColumnIndexOrThrow(_stmt, "title")
+           val _columnIndexOfContent: Int = getColumnIndexOrThrow(_stmt, "content")
+           val _columnIndexOfTimestamp: Int = getColumnIndexOrThrow(_stmt, "timestamp")
+           val _columnIndexOfLabels: Int = getColumnIndexOrThrow(_stmt, "labels")
+           val _result: MutableList<NoteEntity> = mutableListOf()
+           while (_stmt.step()) {
+             val _item: NoteEntity
+             val _tmpId: Int
+             _tmpId = _stmt.getLong(_columnIndexOfId).toInt()
+             val _tmpTitle: String
+             _tmpTitle = _stmt.getText(_columnIndexOfTitle)
+             val _tmpContent: String
+             _tmpContent = _stmt.getText(_columnIndexOfContent)
+             val _tmpTimestamp: Long
+             _tmpTimestamp = _stmt.getLong(_columnIndexOfTimestamp)
+             val _tmpLabels: Set<String>
+             val _tmp: String
+             _tmp = _stmt.getText(_columnIndexOfLabels)
+             _tmpLabels = __converters.jsonToListString(_tmp)
+             _item = NoteEntity(_tmpId,_tmpTitle,_tmpContent,_tmpTimestamp,_tmpLabels)
+             _result.add(_item)
+           }
+           _result
+         } finally {
+           _stmt.close()
+         }
+       }
+     }
+   }
+ 
+   public override fun getAllNotes(): List<NoteEntity> {
+     val _sql: String = "SELECT * FROM note_table"
+     return performBlocking(__db, true, false) { _connection ->
+       val _stmt: SQLiteStatement = _connection.prepare(_sql)
+       try {
+         val _columnIndexOfId: Int = getColumnIndexOrThrow(_stmt, "id")
+         val _columnIndexOfTitle: Int = getColumnIndexOrThrow(_stmt, "title")
+         val _columnIndexOfContent: Int = getColumnIndexOrThrow(_stmt, "content")
+         val _columnIndexOfTimestamp: Int = getColumnIndexOrThrow(_stmt, "timestamp")
+         val _columnIndexOfLabels: Int = getColumnIndexOrThrow(_stmt, "labels")
+         val _result: MutableList<NoteEntity> = mutableListOf()
+         while (_stmt.step()) {
+           val _item: NoteEntity
+           val _tmpId: Int
+           _tmpId = _stmt.getLong(_columnIndexOfId).toInt()
+           val _tmpTitle: String
+           _tmpTitle = _stmt.getText(_columnIndexOfTitle)
+           val _tmpContent: String
+           _tmpContent = _stmt.getText(_columnIndexOfContent)
+           val _tmpTimestamp: Long
+           _tmpTimestamp = _stmt.getLong(_columnIndexOfTimestamp)
+           val _tmpLabels: Set<String>
+           val _tmp: String
+           _tmp = _stmt.getText(_columnIndexOfLabels)
+           _tmpLabels = __converters.jsonToListString(_tmp)
+           _item = NoteEntity(_tmpId,_tmpTitle,_tmpContent,_tmpTimestamp,_tmpLabels)
+           _result.add(_item)
+         }
+         _result
+       } finally {
+         _stmt.close()
+       }
+     }
+   }
+ 
+   public override fun getNoteFlow(id: Int): Flow<NoteEntity> {
+     val _sql: String = "SELECT * FROM note_table WHERE id=?"
+     return createFlow(__db, false, arrayOf("note_table")) { _connection ->
+       val _stmt: SQLiteStatement = _connection.prepare(_sql)
+       try {
+         var _argIndex: Int = 1
+         _stmt.bindLong(_argIndex, id.toLong())
+         val _columnIndexOfId: Int = getColumnIndexOrThrow(_stmt, "id")
+         val _columnIndexOfTitle: Int = getColumnIndexOrThrow(_stmt, "title")
+         val _columnIndexOfContent: Int = getColumnIndexOrThrow(_stmt, "content")
+         val _columnIndexOfTimestamp: Int = getColumnIndexOrThrow(_stmt, "timestamp")
+         val _columnIndexOfLabels: Int = getColumnIndexOrThrow(_stmt, "labels")
+         val _result: NoteEntity
+         if (_stmt.step()) {
+           val _tmpId: Int
+           _tmpId = _stmt.getLong(_columnIndexOfId).toInt()
+           val _tmpTitle: String
+           _tmpTitle = _stmt.getText(_columnIndexOfTitle)
+           val _tmpContent: String
+           _tmpContent = _stmt.getText(_columnIndexOfContent)
+           val _tmpTimestamp: Long
+           _tmpTimestamp = _stmt.getLong(_columnIndexOfTimestamp)
+           val _tmpLabels: Set<String>
+           val _tmp: String
+           _tmp = _stmt.getText(_columnIndexOfLabels)
+           _tmpLabels = __converters.jsonToListString(_tmp)
+           _result = NoteEntity(_tmpId,_tmpTitle,_tmpContent,_tmpTimestamp,_tmpLabels)
+         } else {
+           error("The query result was empty, but expected a single row to return a NON-NULL object of type <com.stslex93.notes.core.database.note.NoteEntity>.")
+         }
+         _result
+       } finally {
+         _stmt.close()
+       }
+     }
+   }
+ 
+   public override suspend fun getNote(id: Int): NoteEntity {
+     val _sql: String = "SELECT * FROM note_table WHERE id=?"
+     return performSuspending(__db, true, false) { _connection ->
+       val _stmt: SQLiteStatement = _connection.prepare(_sql)
+       try {
+         var _argIndex: Int = 1
+         _stmt.bindLong(_argIndex, id.toLong())
+         val _columnIndexOfId: Int = getColumnIndexOrThrow(_stmt, "id")
+         val _columnIndexOfTitle: Int = getColumnIndexOrThrow(_stmt, "title")
+         val _columnIndexOfContent: Int = getColumnIndexOrThrow(_stmt, "content")
+         val _columnIndexOfTimestamp: Int = getColumnIndexOrThrow(_stmt, "timestamp")
+         val _columnIndexOfLabels: Int = getColumnIndexOrThrow(_stmt, "labels")
+         val _result: NoteEntity
+         if (_stmt.step()) {
+           val _tmpId: Int
+           _tmpId = _stmt.getLong(_columnIndexOfId).toInt()
+           val _tmpTitle: String
+           _tmpTitle = _stmt.getText(_columnIndexOfTitle)
+           val _tmpContent: String
+           _tmpContent = _stmt.getText(_columnIndexOfContent)
+           val _tmpTimestamp: Long
+           _tmpTimestamp = _stmt.getLong(_columnIndexOfTimestamp)
+           val _tmpLabels: Set<String>
+           val _tmp: String
+           _tmp = _stmt.getText(_columnIndexOfLabels)
+           _tmpLabels = __converters.jsonToListString(_tmp)
+           _result = NoteEntity(_tmpId,_tmpTitle,_tmpContent,_tmpTimestamp,_tmpLabels)
+         } else {
+           error("The query result was empty, but expected a single row to return a NON-NULL object of type <com.stslex93.notes.core.database.note.NoteEntity>.")
+         }
+         _result
+       } finally {
+         _stmt.close()
+       }
+     }
+   }
+ 
+   public override fun getNotesById(ids: List<String>): Flow<List<NoteEntity>> {
+     val _stringBuilder: StringBuilder = StringBuilder()
+     _stringBuilder.append("SELECT * FROM note_table WHERE id IN (")
+     val _inputSize: Int = ids.size
+     appendPlaceholders(_stringBuilder, _inputSize)
+     _stringBuilder.append(")")
+     val _sql: String = _stringBuilder.toString()
+     return createFlow(__db, false, arrayOf("note_table")) { _connection ->
+       val _stmt: SQLiteStatement = _connection.prepare(_sql)
+       try {
+         var _argIndex: Int = 1
+         for (_item: String in ids) {
+           _stmt.bindText(_argIndex, _item)
+           _argIndex++
+         }
+         val _columnIndexOfId: Int = getColumnIndexOrThrow(_stmt, "id")
+         val _columnIndexOfTitle: Int = getColumnIndexOrThrow(_stmt, "title")
+         val _columnIndexOfContent: Int = getColumnIndexOrThrow(_stmt, "content")
+         val _columnIndexOfTimestamp: Int = getColumnIndexOrThrow(_stmt, "timestamp")
+         val _columnIndexOfLabels: Int = getColumnIndexOrThrow(_stmt, "labels")
+         val _result: MutableList<NoteEntity> = mutableListOf()
+         while (_stmt.step()) {
+           val _item_1: NoteEntity
+           val _tmpId: Int
+           _tmpId = _stmt.getLong(_columnIndexOfId).toInt()
+           val _tmpTitle: String
+           _tmpTitle = _stmt.getText(_columnIndexOfTitle)
+           val _tmpContent: String
+           _tmpContent = _stmt.getText(_columnIndexOfContent)
+           val _tmpTimestamp: Long
+           _tmpTimestamp = _stmt.getLong(_columnIndexOfTimestamp)
+           val _tmpLabels: Set<String>
+           val _tmp: String
+           _tmp = _stmt.getText(_columnIndexOfLabels)
+           _tmpLabels = __converters.jsonToListString(_tmp)
+           _item_1 = NoteEntity(_tmpId,_tmpTitle,_tmpContent,_tmpTimestamp,_tmpLabels)
+           _result.add(_item_1)
+         }
+         _result
+       } finally {
+         _stmt.close()
+       }
+     }
+   }
+ 
+   public override suspend fun deleteNotesById(ids: List<Int>) {
+     val _stringBuilder: StringBuilder = StringBuilder()
+     _stringBuilder.append("DELETE FROM note_table WHERE id IN (")
+     val _inputSize: Int = ids.size
+     appendPlaceholders(_stringBuilder, _inputSize)
+     _stringBuilder.append(") ")
+     val _sql: String = _stringBuilder.toString()
+     return performSuspending(__db, false, true) { _connection ->
+       val _stmt: SQLiteStatement = _connection.prepare(_sql)
+       try {
+         var _argIndex: Int = 1
+         for (_item: Int in ids) {
+           _stmt.bindLong(_argIndex, _item.toLong())
+           _argIndex++
+         }
+         _stmt.step()
+       } finally {
+         _stmt.close()
+       }
+     }
+   }
+ 
+   public override suspend fun deleteAll() {
+     val _sql: String = "DELETE FROM note_table"
+     return performSuspending(__db, false, true) { _connection ->
+       val _stmt: SQLiteStatement = _connection.prepare(_sql)
+       try {
+         _stmt.step()
+       } finally {
+         _stmt.close()
+       }
+     }
+   }
+ 
+   public companion object {
+     public fun getRequiredConverters(): List<KClass<*>> = emptyList()
+   }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-5/sources/source-2.html b/docs/reports/ns-5/sources/source-2.html new file mode 100644 index 00000000..224d899d --- /dev/null +++ b/docs/reports/ns-5/sources/source-2.html @@ -0,0 +1,114 @@ + + + + + + + + app Coverage Report > NoteDao + + + + + + +
+ + +

Coverage Summary for Class: NoteDao (com.stslex93.notes.core.database.note)

+ + + + + + + + + + +
Class + Branch, % +
NoteDao +
+ +
+
+ + +
+ package com.stslex93.notes.core.database.note
+ 
+ import androidx.paging.PagingSource
+ import androidx.room.Dao
+ import androidx.room.Insert
+ import androidx.room.OnConflictStrategy
+ import androidx.room.Query
+ import kotlinx.coroutines.flow.Flow
+ 
+ @Dao
+ interface NoteDao {
+ 
+     @Query(
+         "SELECT * FROM note_table " +
+                 "WHERE title LIKE '%' || :query || '%' OR " +
+                 "content LIKE '%' || :query || '%' " +
+                 "ORDER BY timestamp DESC"
+     )
+     fun getAll(query: String): PagingSource<Int, NoteEntity>
+ 
+     @Query("SELECT * FROM note_table")
+     fun getAllNotes(): List<NoteEntity>
+ 
+     @Query("SELECT * FROM note_table WHERE id=:id")
+     fun getNoteFlow(id: Int): Flow<NoteEntity>
+ 
+     @Query("SELECT * FROM note_table WHERE id=:id")
+     suspend fun getNote(id: Int): NoteEntity
+ 
+     @Query("SELECT * FROM note_table WHERE id IN (:ids)")
+     fun getNotesById(ids: List<String>): Flow<List<NoteEntity>>
+ 
+     @Query("DELETE FROM note_table WHERE id IN (:ids) ")
+     suspend fun deleteNotesById(ids: List<Int>)
+ 
+     @Insert(onConflict = OnConflictStrategy.REPLACE)
+     suspend fun insert(note: NoteEntity)
+ 
+     @Query("DELETE FROM note_table")
+     suspend fun deleteAll()
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-6/index.html b/docs/reports/ns-6/index.html new file mode 100644 index 00000000..22538d63 --- /dev/null +++ b/docs/reports/ns-6/index.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-6/index_SORT_BY_BLOCK.html b/docs/reports/ns-6/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..8add5dc7 --- /dev/null +++ b/docs/reports/ns-6/index_SORT_BY_BLOCK.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-6/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-6/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..488d03aa --- /dev/null +++ b/docs/reports/ns-6/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-6/index_SORT_BY_CLASS.html b/docs/reports/ns-6/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..19bcb97a --- /dev/null +++ b/docs/reports/ns-6/index_SORT_BY_CLASS.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-6/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-6/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..94bc98c1 --- /dev/null +++ b/docs/reports/ns-6/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-6/index_SORT_BY_LINE.html b/docs/reports/ns-6/index_SORT_BY_LINE.html new file mode 100644 index 00000000..a6121d5e --- /dev/null +++ b/docs/reports/ns-6/index_SORT_BY_LINE.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-6/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-6/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..2b21ab73 --- /dev/null +++ b/docs/reports/ns-6/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-6/index_SORT_BY_METHOD.html b/docs/reports/ns-6/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..67ac7f5e --- /dev/null +++ b/docs/reports/ns-6/index_SORT_BY_METHOD.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-6/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-6/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..038512d4 --- /dev/null +++ b/docs/reports/ns-6/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-6/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-6/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..8a5bc78e --- /dev/null +++ b/docs/reports/ns-6/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-6/index_SORT_BY_STATEMENT.html b/docs/reports/ns-6/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..9ee9fc79 --- /dev/null +++ b/docs/reports/ns-6/index_SORT_BY_STATEMENT.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-6/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-6/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..431eb55b --- /dev/null +++ b/docs/reports/ns-6/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/11) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-6/sources/source-1.html b/docs/reports/ns-6/sources/source-1.html new file mode 100644 index 00000000..674215d3 --- /dev/null +++ b/docs/reports/ns-6/sources/source-1.html @@ -0,0 +1,140 @@ + + + + + + + + app Coverage Report > LabelDataMapper + + + + + + +
+ + +

Coverage Summary for Class: LabelDataMapper (com.stslex93.notes.core.label.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataMapper + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/27) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.label.model
+ 
+ import com.stslex93.notes.core.database.label.LabelEntity
+ import java.time.OffsetDateTime
+ 
+ object LabelDataMapper {
+ 
+     fun LabelEntity.toData(): LabelDataModel = LabelDataModel(
+         uuid = uuid,
+         title = title,
+         timestamp = OffsetDateTime.parse(timestamp)
+     )
+ 
+     fun LabelDataModel.toEntity(): LabelEntity = LabelEntity(
+         uuid = uuid,
+         title = title,
+         timestamp = timestamp.toString()
+     )
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-6/sources/source-2.html b/docs/reports/ns-6/sources/source-2.html new file mode 100644 index 00000000..d5de04d1 --- /dev/null +++ b/docs/reports/ns-6/sources/source-2.html @@ -0,0 +1,131 @@ + + + + + + + + app Coverage Report > LabelDataModel + + + + + + +
+ + +

Coverage Summary for Class: LabelDataModel (com.stslex93.notes.core.label.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.label.model
+ 
+ import java.time.OffsetDateTime
+ import java.util.UUID
+ 
+ data class LabelDataModel(
+     val uuid: String = UUID.randomUUID().toString(),
+     val title: String,
+     val timestamp: OffsetDateTime = OffsetDateTime.now()
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-7/index.html b/docs/reports/ns-7/index.html new file mode 100644 index 00000000..7e7f6815 --- /dev/null +++ b/docs/reports/ns-7/index.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelPagerExt + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
LabelRepositoryImpl + + 0% + + + (0/4) + + + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-7/index_SORT_BY_BLOCK.html b/docs/reports/ns-7/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..bf69be84 --- /dev/null +++ b/docs/reports/ns-7/index_SORT_BY_BLOCK.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelPagerExt + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
LabelRepositoryImpl + + 0% + + + (0/4) + + + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-7/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-7/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..23394ce5 --- /dev/null +++ b/docs/reports/ns-7/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelRepositoryImpl + + 0% + + + (0/4) + + + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
LabelPagerExt + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-7/index_SORT_BY_CLASS.html b/docs/reports/ns-7/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..022e8578 --- /dev/null +++ b/docs/reports/ns-7/index_SORT_BY_CLASS.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelPagerExt + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
LabelRepositoryImpl + + 0% + + + (0/4) + + + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-7/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-7/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..e119a4e6 --- /dev/null +++ b/docs/reports/ns-7/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelRepositoryImpl + + 0% + + + (0/4) + + + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
LabelPagerExt + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-7/index_SORT_BY_LINE.html b/docs/reports/ns-7/index_SORT_BY_LINE.html new file mode 100644 index 00000000..51aa2d2a --- /dev/null +++ b/docs/reports/ns-7/index_SORT_BY_LINE.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelPagerExt + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
LabelRepositoryImpl + + 0% + + + (0/4) + + + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-7/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-7/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..11af3e39 --- /dev/null +++ b/docs/reports/ns-7/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelRepositoryImpl + + 0% + + + (0/4) + + + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
LabelPagerExt + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-7/index_SORT_BY_METHOD.html b/docs/reports/ns-7/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..33db3ef8 --- /dev/null +++ b/docs/reports/ns-7/index_SORT_BY_METHOD.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelPagerExt + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
LabelRepositoryImpl + + 0% + + + (0/4) + + + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-7/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-7/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..b3bfd26b --- /dev/null +++ b/docs/reports/ns-7/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelRepositoryImpl + + 0% + + + (0/4) + + + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
LabelPagerExt + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-7/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-7/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..c97ca87b --- /dev/null +++ b/docs/reports/ns-7/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelRepositoryImpl + + 0% + + + (0/4) + + + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
LabelPagerExt + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-7/index_SORT_BY_STATEMENT.html b/docs/reports/ns-7/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..8577f83e --- /dev/null +++ b/docs/reports/ns-7/index_SORT_BY_STATEMENT.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelPagerExt + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
LabelRepositoryImpl + + 0% + + + (0/4) + + + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-7/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-7/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..251c9409 --- /dev/null +++ b/docs/reports/ns-7/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.label.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.label.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.label.repository + + 0% + + + (0/7) + + + + 0% + + + (0/15) + + + + + 0% + + + (0/18) + + + + 0% + + + (0/140) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelRepositoryImpl + + 0% + + + (0/4) + + + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
LabelPagerExt + + 0% + + + (0/3) + + + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-7/sources/source-1.html b/docs/reports/ns-7/sources/source-1.html new file mode 100644 index 00000000..cbe3fed3 --- /dev/null +++ b/docs/reports/ns-7/sources/source-1.html @@ -0,0 +1,261 @@ + + + + + + + + app Coverage Report > LabelPagerExt + + + + + + +
+ + +

Coverage Summary for Class: LabelPagerExt (com.stslex93.notes.core.label.repository)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelPagerExt + + 0% + + + (0/1) + + + + + 0% + + + (0/7) + + + + 0% + + + (0/30) + +
LabelPagerExt$getPagingLabels$$inlined$map$1 + + 0% + + + (0/2) + + +
LabelPagerExt$getPagingLabels$$inlined$map$1$1 +
LabelPagerExt$getPagingLabels$$inlined$map$1$2 + + 0% + + + (0/1) + + +
LabelPagerExt$getPagingLabels$$inlined$map$1$2$1 +
LabelPagerExt$getPagingLabels$1 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/4) + +
LabelPagerExt$getPagingLabels$2$1 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/8) + +
Total + + 0% + + + (0/6) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/42) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.label.repository
+ 
+ import androidx.paging.Pager
+ import androidx.paging.PagingConfig
+ import androidx.paging.PagingData
+ import androidx.paging.PagingSource
+ import androidx.paging.map
+ import com.stslex93.notes.core.database.label.LabelEntity
+ import com.stslex93.notes.core.label.model.LabelDataMapper.toData
+ import com.stslex93.notes.core.label.model.LabelDataModel
+ import kotlinx.coroutines.Dispatchers
+ import kotlinx.coroutines.flow.Flow
+ import kotlinx.coroutines.flow.flowOn
+ import kotlinx.coroutines.flow.map
+ 
+ object LabelPagerExt {
+ 
+     const val PAGE_SIZE = 30
+     const val IS_PLACEHOLDER_ENABLE = false
+ 
+     inline fun getPagingLabels(
+         crossinline action: () -> PagingSource<Int, LabelEntity>,
+     ): Flow<PagingData<LabelDataModel>> = Pager(
+         PagingConfig(
+             pageSize = PAGE_SIZE,
+             enablePlaceholders = IS_PLACEHOLDER_ENABLE
+         )
+     ) {
+         action()
+     }
+         .flow
+         .map { pagingData ->
+             pagingData.map { it.toData() }
+         }
+         .flowOn(Dispatchers.IO)
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-7/sources/source-2.html b/docs/reports/ns-7/sources/source-2.html new file mode 100644 index 00000000..af4b6278 --- /dev/null +++ b/docs/reports/ns-7/sources/source-2.html @@ -0,0 +1,276 @@ + + + + + + + + app Coverage Report > LabelRepositoryImpl + + + + + + +
+ + +

Coverage Summary for Class: LabelRepositoryImpl (com.stslex93.notes.core.label.repository)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
LabelRepositoryImpl + + 0% + + + (0/5) + + + + + 0% + + + (0/6) + + + + 0% + + + (0/52) + +
LabelRepositoryImpl$addLabel$2 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/16) + +
LabelRepositoryImpl$getAllLabels$2 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/16) + +
LabelRepositoryImpl$removeLabel$2 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/14) + +
LabelRepositoryImpl$searchLabels$$inlined$getPagingLabels$1 + + 0% + + + (0/1) + + +
Total + + 0% + + + (0/9) + + + + + 0% + + + (0/9) + + + + 0% + + + (0/98) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.label.repository
+ 
+ import androidx.paging.PagingData
+ import com.stslex93.notes.core.database.label.LabelDao
+ import com.stslex93.notes.core.label.model.LabelDataMapper.toData
+ import com.stslex93.notes.core.label.model.LabelDataMapper.toEntity
+ import com.stslex93.notes.core.label.model.LabelDataModel
+ import com.stslex93.notes.core.label.repository.LabelPagerExt.getPagingLabels
+ import kotlinx.coroutines.Dispatchers
+ import kotlinx.coroutines.flow.Flow
+ import kotlinx.coroutines.withContext
+ import javax.inject.Inject
+ import javax.inject.Singleton
+ 
+ @Singleton
+ class LabelRepositoryImpl @Inject constructor(
+     private val dao: LabelDao
+ ) : LabelRepository {
+ 
+     override suspend fun removeLabel(uuid: String) {
+         withContext(Dispatchers.IO) {
+             dao.removeLabel(uuid)
+         }
+     }
+ 
+     override suspend fun addLabel(label: LabelDataModel) {
+         withContext(Dispatchers.IO) {
+             dao.addLabel(label.toEntity())
+         }
+     }
+ 
+     override suspend fun getAllLabels(
+         uuids: Set<String>
+     ): Set<LabelDataModel> = withContext(Dispatchers.IO) {
+         dao.getLabels(uuids).map { it.toData() }.toSet()
+     }
+ 
+     override fun searchLabels(
+         query: String
+     ): Flow<PagingData<LabelDataModel>> = getPagingLabels {
+         dao.search(query)
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-7/sources/source-3.html b/docs/reports/ns-7/sources/source-3.html new file mode 100644 index 00000000..af0db11b --- /dev/null +++ b/docs/reports/ns-7/sources/source-3.html @@ -0,0 +1,89 @@ + + + + + + + + app Coverage Report > LabelRepository + + + + + + +
+ + +

Coverage Summary for Class: LabelRepository (com.stslex93.notes.core.label.repository)

+ + + + + + + + + + +
Class + Branch, % +
LabelRepository +
+ +
+
+ + +
+ package com.stslex93.notes.core.label.repository
+ 
+ import androidx.paging.PagingData
+ import com.stslex93.notes.core.label.model.LabelDataModel
+ import kotlinx.coroutines.flow.Flow
+ 
+ interface LabelRepository {
+ 
+     suspend fun addLabel(label: LabelDataModel)
+ 
+     suspend fun removeLabel(uuid: String)
+ 
+     suspend fun getAllLabels(uuids: Set<String>): Set<LabelDataModel>
+ 
+     fun searchLabels(query: String): Flow<PagingData<LabelDataModel>>
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-8/index.html b/docs/reports/ns-8/index.html new file mode 100644 index 00000000..ab799a45 --- /dev/null +++ b/docs/reports/ns-8/index.html @@ -0,0 +1,263 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.model

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppArguments + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
AppDestination + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
NavigationScreen + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-8/index_SORT_BY_BLOCK.html b/docs/reports/ns-8/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..a35219ec --- /dev/null +++ b/docs/reports/ns-8/index_SORT_BY_BLOCK.html @@ -0,0 +1,263 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.model

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppArguments + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
NavigationScreen + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
AppDestination + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-8/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-8/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..c9b3f06d --- /dev/null +++ b/docs/reports/ns-8/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,263 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.model

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDestination + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
NavigationScreen + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
AppArguments + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-8/index_SORT_BY_CLASS.html b/docs/reports/ns-8/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..c868d39c --- /dev/null +++ b/docs/reports/ns-8/index_SORT_BY_CLASS.html @@ -0,0 +1,263 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.model

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppArguments + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
AppDestination + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
NavigationScreen + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-8/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-8/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..ed17a6e5 --- /dev/null +++ b/docs/reports/ns-8/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,263 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.model

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigationScreen + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
AppDestination + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
AppArguments + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-8/index_SORT_BY_LINE.html b/docs/reports/ns-8/index_SORT_BY_LINE.html new file mode 100644 index 00000000..84470d72 --- /dev/null +++ b/docs/reports/ns-8/index_SORT_BY_LINE.html @@ -0,0 +1,263 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.model

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppArguments + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
AppDestination + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
NavigationScreen + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-8/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-8/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..54f13d46 --- /dev/null +++ b/docs/reports/ns-8/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,263 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.model

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigationScreen + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
AppDestination + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
AppArguments + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-8/index_SORT_BY_METHOD.html b/docs/reports/ns-8/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..6550413f --- /dev/null +++ b/docs/reports/ns-8/index_SORT_BY_METHOD.html @@ -0,0 +1,263 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.model

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppArguments + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
AppDestination + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
NavigationScreen + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-8/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-8/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..3c5e6786 --- /dev/null +++ b/docs/reports/ns-8/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,263 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.model

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigationScreen + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
AppDestination + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
AppArguments + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-8/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-8/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..ad65431d --- /dev/null +++ b/docs/reports/ns-8/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,263 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.model

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigationScreen + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
AppDestination + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
AppArguments + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-8/index_SORT_BY_STATEMENT.html b/docs/reports/ns-8/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..2d9157fc --- /dev/null +++ b/docs/reports/ns-8/index_SORT_BY_STATEMENT.html @@ -0,0 +1,263 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.model

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppArguments + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
AppDestination + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
NavigationScreen + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-8/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-8/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..2b67d6d3 --- /dev/null +++ b/docs/reports/ns-8/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,263 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.model

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.model + + 0% + + + (0/10) + + + + 0% + + + (0/24) + + + + 0% + + + (0/2) + + + + 0% + + + (0/48) + + + + 0% + + + (0/289) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigationScreen + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
AppDestination + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
AppArguments + + 0% + + + (0/4) + + + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-8/sources/source-1.html b/docs/reports/ns-8/sources/source-1.html new file mode 100644 index 00000000..a2846880 --- /dev/null +++ b/docs/reports/ns-8/sources/source-1.html @@ -0,0 +1,260 @@ + + + + + + + + app Coverage Report > AppArguments + + + + + + +
+ + +

Coverage Summary for Class: AppArguments (com.stslex93.notes.core.navigation.model)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppArguments + + 0% + + + (0/2) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/16) + +
AppArguments$Companion +
AppArguments$Empty + + 0% + + + (0/3) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/11) + +
AppArguments$LabelEdit + + 0% + + + (0/1) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/26) + +
AppArguments$NoteEdit + + 0% + + + (0/1) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/34) + +
Total + + 0% + + + (0/7) + + + + + 0% + + + (0/14) + + + + 0% + + + (0/87) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.navigation.model
+ 
+ sealed class AppArguments {
+ 
+     abstract val arguments: List<String>
+ 
+     open val argumentsForRoute: String
+         get() = arguments.joinToString(
+             separator = ARGUMENTS_SEPARATOR,
+             prefix = ARGUMENTS_SEPARATOR
+         )
+ 
+     data object Empty : AppArguments() {
+         override val arguments = emptyList<String>()
+         override val argumentsForRoute = ""
+     }
+ 
+     data class NoteEdit(
+         val noteId: Int,
+         val isEdit: Boolean,
+     ) : AppArguments() {
+         override val arguments = listOf(noteId.toString(), isEdit.toString())
+     }
+ 
+     data class LabelEdit(
+         val noteIds: Set<Int>
+     ) : AppArguments() {
+         override val arguments = listOf(noteIds.joinToString(LIST_SEPARATOR))
+     }
+ 
+     companion object {
+         private const val ARGUMENTS_SEPARATOR = "/"
+         const val LIST_SEPARATOR = "="
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-8/sources/source-2.html b/docs/reports/ns-8/sources/source-2.html new file mode 100644 index 00000000..1470419b --- /dev/null +++ b/docs/reports/ns-8/sources/source-2.html @@ -0,0 +1,189 @@ + + + + + + + + app Coverage Report > AppDestination + + + + + + +
+ + +

Coverage Summary for Class: AppDestination (com.stslex93.notes.core.navigation.model)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
AppDestination + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
AppDestination$Companion +
Total + + 0% + + + (0/5) + + + + 0% + + + (0/2) + + + + 0% + + + (0/15) + + + + 0% + + + (0/125) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.navigation.model
+ 
+ enum class AppDestination(vararg val argsNames: String) {
+     HOME,
+     NOTE_EDIT("noteId", "isEdit"),
+     LABEL_EDIT("noteIds"),
+     UNDEFINED;
+ 
+     val route: String
+         get() = StringBuilder()
+             .append(name, SEPARATOR_ROUTE_NAME, TAG_ROUTE)
+             .toString()
+             .lowercase()
+ 
+     val navigationRoute: String
+         get() = "$route${argsNames.argumentsRoute}"
+ 
+     private val Array<out String>.argumentsRoute: String
+         get() = if (isNotEmpty()) joinToString(
+             separator = SEPARATOR_ROUTE,
+             prefix = PREFIX_ROUTE,
+             postfix = POSTFIX_ROUTE
+         ) else ""
+ 
+     companion object {
+ 
+         private const val SEPARATOR_ROUTE_NAME = "_"
+         private const val SEPARATOR_ROUTE = "}/{"
+         private const val PREFIX_ROUTE = "/{"
+         private const val POSTFIX_ROUTE = "}"
+ 
+         private const val TAG_ROUTE = "route"
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-8/sources/source-3.html b/docs/reports/ns-8/sources/source-3.html new file mode 100644 index 00000000..4ba6b9d7 --- /dev/null +++ b/docs/reports/ns-8/sources/source-3.html @@ -0,0 +1,292 @@ + + + + + + + + app Coverage Report > NavigationScreen + + + + + + +
+ + +

Coverage Summary for Class: NavigationScreen (com.stslex93.notes.core.navigation.model)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigationScreen + + 0% + + + (0/4) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/12) + +
NavigationScreen$EditLabelScreen + + 0% + + + (0/1) + + + + + 0% + + + (0/4) + + + + 0% + + + (0/20) + +
NavigationScreen$EditNoteScreen + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/26) + +
NavigationScreen$HomeScreen + + 0% + + + (0/3) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/9) + +
NavigationScreen$PopBackStack + + 0% + + + (0/3) + + + + + 0% + + + (0/3) + + + + 0% + + + (0/10) + +
Total + + 0% + + + (0/12) + + + + + 0% + + + (0/19) + + + + 0% + + + (0/77) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.navigation.model
+ 
+ import com.stslex93.notes.core.ui.di.Screen
+ 
+ sealed class NavigationScreen : Screen {
+ 
+     abstract val screen: AppDestination
+ 
+     val screenRoute: String
+         get() = "${screen.route}${appArgs.argumentsForRoute}"
+ 
+     open val isSingleTop: Boolean
+         get() = false
+ 
+     open val appArgs: AppArguments
+         get() = AppArguments.Empty
+ 
+     data object HomeScreen : NavigationScreen() {
+         override val screen: AppDestination = AppDestination.HOME
+         override val isSingleTop: Boolean = true
+     }
+ 
+     data class EditNoteScreen(
+         private val noteId: Int,
+         private val isEdit: Boolean
+     ) : NavigationScreen() {
+         override val screen: AppDestination = AppDestination.NOTE_EDIT
+         override val appArgs: AppArguments = AppArguments.NoteEdit(noteId, isEdit)
+     }
+ 
+     data class EditLabelScreen(
+         private val noteIds: Set<Int>
+     ) : NavigationScreen() {
+         override val screen = AppDestination.LABEL_EDIT
+         override val appArgs = AppArguments.LabelEdit(noteIds)
+     }
+ 
+     data object PopBackStack : NavigationScreen() {
+ 
+         override val screen: AppDestination = AppDestination.UNDEFINED
+         override val appArgs: AppArguments = AppArguments.Empty
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-9/index.html b/docs/reports/ns-9/index.html new file mode 100644 index 00000000..cc28238a --- /dev/null +++ b/docs/reports/ns-9/index.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.navigator + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.navigator

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-9/index_SORT_BY_BLOCK.html b/docs/reports/ns-9/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..e0b194b8 --- /dev/null +++ b/docs/reports/ns-9/index_SORT_BY_BLOCK.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.navigator + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.navigator

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-9/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-9/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..2c7b0825 --- /dev/null +++ b/docs/reports/ns-9/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.navigator + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.navigator

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-9/index_SORT_BY_CLASS.html b/docs/reports/ns-9/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..bb8f37fd --- /dev/null +++ b/docs/reports/ns-9/index_SORT_BY_CLASS.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.navigator + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.navigator

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-9/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-9/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..9c329ac4 --- /dev/null +++ b/docs/reports/ns-9/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.navigator + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.navigator

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-9/index_SORT_BY_LINE.html b/docs/reports/ns-9/index_SORT_BY_LINE.html new file mode 100644 index 00000000..13b7cb82 --- /dev/null +++ b/docs/reports/ns-9/index_SORT_BY_LINE.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.navigator + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.navigator

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-9/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-9/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..c518206e --- /dev/null +++ b/docs/reports/ns-9/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.navigator + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.navigator

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-9/index_SORT_BY_METHOD.html b/docs/reports/ns-9/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..eec66606 --- /dev/null +++ b/docs/reports/ns-9/index_SORT_BY_METHOD.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.navigator + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.navigator

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-9/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-9/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..7e431d58 --- /dev/null +++ b/docs/reports/ns-9/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.navigator + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.navigator

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-9/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-9/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..7a6a07be --- /dev/null +++ b/docs/reports/ns-9/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.navigator + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.navigator

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-9/index_SORT_BY_STATEMENT.html b/docs/reports/ns-9/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..8b404302 --- /dev/null +++ b/docs/reports/ns-9/index_SORT_BY_STATEMENT.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.navigator + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.navigator

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-9/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-9/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..32fad7de --- /dev/null +++ b/docs/reports/ns-9/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.navigator + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.navigator

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.navigator + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-9/sources/source-1.html b/docs/reports/ns-9/sources/source-1.html new file mode 100644 index 00000000..d1e2d597 --- /dev/null +++ b/docs/reports/ns-9/sources/source-1.html @@ -0,0 +1,166 @@ + + + + + + + + app Coverage Report > NavigatorImpl + + + + + + +
+ + +

Coverage Summary for Class: NavigatorImpl (com.stslex93.notes.core.navigation.navigator)

+ + + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavigatorImpl + + 0% + + + (0/1) + + + + 0% + + + (0/5) + + + + 0% + + + (0/12) + + + + 0% + + + (0/14) + + + + 0% + + + (0/71) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.navigation.navigator
+ 
+ import androidx.navigation.NavHostController
+ import com.stslex.aproselection.core.core.Logger
+ import com.stslex93.notes.core.navigation.model.NavigationScreen
+ import com.stslex93.notes.core.ui.di.Navigator
+ import com.stslex93.notes.core.ui.di.Screen
+ import javax.inject.Inject
+ 
+ class NavigatorImpl @Inject constructor(
+     private val navController: NavHostController
+ ) : Navigator {
+ 
+     override fun invoke(screen: Screen) {
+         when (screen) {
+             is NavigationScreen.PopBackStack -> navController.popBackStack()
+             is NavigationScreen -> navigateScreen(screen)
+             else -> {
+                 Logger.debug("unresolve navigation route", this::class.simpleName)
+             }
+         }
+     }
+ 
+     private fun navigateScreen(screen: NavigationScreen) {
+         val currentRoute = navController.currentDestination?.route ?: return
+         if (currentRoute == screen.screen.navigationRoute) return
+ 
+         navController.navigate(screen.screenRoute) {
+             if (screen.isSingleTop.not()) return@navigate
+ 
+             popUpTo(currentRoute) {
+                 inclusive = true
+                 saveState = true
+             }
+             launchSingleTop = true
+         }
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-a/index.html b/docs/reports/ns-a/index.html new file mode 100644 index 00000000..2762c994 --- /dev/null +++ b/docs/reports/ns-a/index.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.utils + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.utils

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-a/index_SORT_BY_BLOCK.html b/docs/reports/ns-a/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..d2131afd --- /dev/null +++ b/docs/reports/ns-a/index_SORT_BY_BLOCK.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.utils + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.utils

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-a/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-a/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..731947be --- /dev/null +++ b/docs/reports/ns-a/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.utils + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.utils

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-a/index_SORT_BY_CLASS.html b/docs/reports/ns-a/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..04ee2f12 --- /dev/null +++ b/docs/reports/ns-a/index_SORT_BY_CLASS.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.utils + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.utils

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-a/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-a/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..87203ab6 --- /dev/null +++ b/docs/reports/ns-a/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.utils + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.utils

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-a/index_SORT_BY_LINE.html b/docs/reports/ns-a/index_SORT_BY_LINE.html new file mode 100644 index 00000000..bf5abe7e --- /dev/null +++ b/docs/reports/ns-a/index_SORT_BY_LINE.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.utils + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.utils

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-a/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-a/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..4a33b536 --- /dev/null +++ b/docs/reports/ns-a/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.utils + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.utils

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-a/index_SORT_BY_METHOD.html b/docs/reports/ns-a/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..c842af06 --- /dev/null +++ b/docs/reports/ns-a/index_SORT_BY_METHOD.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.utils + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.utils

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-a/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-a/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..6e26eb4d --- /dev/null +++ b/docs/reports/ns-a/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.utils + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.utils

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-a/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-a/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..e4c28f11 --- /dev/null +++ b/docs/reports/ns-a/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.utils + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.utils

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-a/index_SORT_BY_STATEMENT.html b/docs/reports/ns-a/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..1902b777 --- /dev/null +++ b/docs/reports/ns-a/index_SORT_BY_STATEMENT.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.utils + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.utils

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-a/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-a/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..167302a9 --- /dev/null +++ b/docs/reports/ns-a/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.navigation.utils + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.navigation.utils

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.navigation.utils + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-a/sources/source-1.html b/docs/reports/ns-a/sources/source-1.html new file mode 100644 index 00000000..bfdc8bc9 --- /dev/null +++ b/docs/reports/ns-a/sources/source-1.html @@ -0,0 +1,150 @@ + + + + + + + + app Coverage Report > NavExt + + + + + + +
+ + +

Coverage Summary for Class: NavExt (com.stslex93.notes.core.navigation.utils)

+ + + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NavExt + + 0% + + + (0/1) + + + + 0% + + + (0/3) + + + + 0% + + + (0/4) + + + + 0% + + + (0/5) + + + + 0% + + + (0/36) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.navigation.utils
+ 
+ import androidx.navigation.NamedNavArgument
+ import androidx.navigation.NavBackStackEntry
+ import androidx.navigation.NavType
+ import androidx.navigation.navArgument
+ import com.stslex93.notes.core.navigation.model.AppDestination
+ 
+ object NavExt {
+ 
+     val AppDestination.composableArguments: List<NamedNavArgument>
+         get() = argsNames.map { name ->
+             navArgument(name) { NavType.StringType }
+         }
+ 
+     val AppDestination.parseArguments: NavBackStackEntry.() -> List<String>
+         get() = {
+             argsNames.map { name ->
+                 arguments?.getString(name).orEmpty()
+             }
+         }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-b/index.html b/docs/reports/ns-b/index.html new file mode 100644 index 00000000..15e3dfc2 --- /dev/null +++ b/docs/reports/ns-b/index.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-b/index_SORT_BY_BLOCK.html b/docs/reports/ns-b/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..205700fd --- /dev/null +++ b/docs/reports/ns-b/index_SORT_BY_BLOCK.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-b/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-b/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..93133607 --- /dev/null +++ b/docs/reports/ns-b/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-b/index_SORT_BY_CLASS.html b/docs/reports/ns-b/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..5d945867 --- /dev/null +++ b/docs/reports/ns-b/index_SORT_BY_CLASS.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-b/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-b/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..8362b6cb --- /dev/null +++ b/docs/reports/ns-b/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-b/index_SORT_BY_LINE.html b/docs/reports/ns-b/index_SORT_BY_LINE.html new file mode 100644 index 00000000..b4a61ada --- /dev/null +++ b/docs/reports/ns-b/index_SORT_BY_LINE.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-b/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-b/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..9459cfa0 --- /dev/null +++ b/docs/reports/ns-b/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-b/index_SORT_BY_METHOD.html b/docs/reports/ns-b/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..85d8e92f --- /dev/null +++ b/docs/reports/ns-b/index_SORT_BY_METHOD.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-b/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-b/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..7cca3f12 --- /dev/null +++ b/docs/reports/ns-b/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-b/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-b/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..3fa5d44c --- /dev/null +++ b/docs/reports/ns-b/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-b/index_SORT_BY_STATEMENT.html b/docs/reports/ns-b/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..dda80169 --- /dev/null +++ b/docs/reports/ns-b/index_SORT_BY_STATEMENT.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-b/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-b/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..b449a051 --- /dev/null +++ b/docs/reports/ns-b/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,213 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.model + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.model

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.model + + 0% + + + (0/2) + + + + 0% + + + (0/3) + + + + + 0% + + + (0/17) + + + + 0% + + + (0/53) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-b/sources/source-1.html b/docs/reports/ns-b/sources/source-1.html new file mode 100644 index 00000000..8e9d203d --- /dev/null +++ b/docs/reports/ns-b/sources/source-1.html @@ -0,0 +1,140 @@ + + + + + + + + app Coverage Report > NoteDataMapperKt + + + + + + +
+ + +

Coverage Summary for Class: NoteDataMapperKt (com.stslex93.notes.core.notes.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataMapperKt + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/12) + + + + 0% + + + (0/26) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.notes.model
+ 
+ import com.stslex93.notes.core.database.note.NoteEntity
+ 
+ fun NoteDataModel.toEntity() = NoteEntity(
+     id = id,
+     title = title,
+     content = content,
+     timestamp = timestamp,
+     labels = labelUuids
+ )
+ 
+ fun NoteEntity.toData() = NoteDataModel(
+     id = id,
+     title = title,
+     content = content,
+     timestamp = timestamp,
+     labelUuids = labels
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-b/sources/source-2.html b/docs/reports/ns-b/sources/source-2.html new file mode 100644 index 00000000..0e90fc62 --- /dev/null +++ b/docs/reports/ns-b/sources/source-2.html @@ -0,0 +1,130 @@ + + + + + + + + app Coverage Report > NoteDataModel + + + + + + +
+ + +

Coverage Summary for Class: NoteDataModel (com.stslex93.notes.core.notes.model)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteDataModel + + 0% + + + (0/1) + + + + 0% + + + (0/1) + + + + + 0% + + + (0/5) + + + + 0% + + + (0/27) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.notes.model
+ 
+ data class NoteDataModel(
+     val id: Int = 0,
+     val title: String,
+     val content: String,
+     val timestamp: Long,
+     val labelUuids: Set<String>
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-c/index.html b/docs/reports/ns-c/index.html new file mode 100644 index 00000000..48919ac7 --- /dev/null +++ b/docs/reports/ns-c/index.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.repository + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-c/index_SORT_BY_BLOCK.html b/docs/reports/ns-c/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..7c3b6a8e --- /dev/null +++ b/docs/reports/ns-c/index_SORT_BY_BLOCK.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.repository + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-c/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-c/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..6de9baed --- /dev/null +++ b/docs/reports/ns-c/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.repository + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-c/index_SORT_BY_CLASS.html b/docs/reports/ns-c/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..fb27bd08 --- /dev/null +++ b/docs/reports/ns-c/index_SORT_BY_CLASS.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.repository + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-c/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-c/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..f67dc0c2 --- /dev/null +++ b/docs/reports/ns-c/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.repository + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-c/index_SORT_BY_LINE.html b/docs/reports/ns-c/index_SORT_BY_LINE.html new file mode 100644 index 00000000..aee14b04 --- /dev/null +++ b/docs/reports/ns-c/index_SORT_BY_LINE.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.repository + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-c/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-c/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..6157e378 --- /dev/null +++ b/docs/reports/ns-c/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.repository + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-c/index_SORT_BY_METHOD.html b/docs/reports/ns-c/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..63e0966a --- /dev/null +++ b/docs/reports/ns-c/index_SORT_BY_METHOD.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.repository + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-c/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-c/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..9e2e68a7 --- /dev/null +++ b/docs/reports/ns-c/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.repository + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-c/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-c/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..9490f639 --- /dev/null +++ b/docs/reports/ns-c/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.repository + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-c/index_SORT_BY_STATEMENT.html b/docs/reports/ns-c/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..d68ed2f6 --- /dev/null +++ b/docs/reports/ns-c/index_SORT_BY_STATEMENT.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.repository + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-c/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-c/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..0c3e0d06 --- /dev/null +++ b/docs/reports/ns-c/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.notes.repository + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.notes.repository

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.notes.repository + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/5) + + + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-c/sources/source-1.html b/docs/reports/ns-c/sources/source-1.html new file mode 100644 index 00000000..51dab075 --- /dev/null +++ b/docs/reports/ns-c/sources/source-1.html @@ -0,0 +1,376 @@ + + + + + + + + app Coverage Report > NoteRepositoryImpl + + + + + + +
+ + +

Coverage Summary for Class: NoteRepositoryImpl (com.stslex93.notes.core.notes.repository)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
NoteRepositoryImpl + + 0% + + + (0/7) + + + + + 0% + + + (0/16) + + + + 0% + + + (0/91) + +
NoteRepositoryImpl$Companion +
NoteRepositoryImpl$deleteNotesById$2 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/14) + +
NoteRepositoryImpl$getNote$2 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/16) + +
NoteRepositoryImpl$getNoteFlow$$inlined$map$1 + + 0% + + + (0/2) + + +
NoteRepositoryImpl$getNoteFlow$$inlined$map$1$2 + + 0% + + + (0/1) + + +
NoteRepositoryImpl$getNoteFlow$$inlined$map$1$2$1 +
NoteRepositoryImpl$insert$2 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/15) + +
NoteRepositoryImpl$searchNotes$$inlined$map$1 + + 0% + + + (0/2) + + +
NoteRepositoryImpl$searchNotes$$inlined$map$1$2 + + 0% + + + (0/1) + + +
NoteRepositoryImpl$searchNotes$$inlined$map$1$2$1 +
NoteRepositoryImpl$searchNotes$2$1 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/7) + +
Total + + 0% + + + (0/17) + + + + + 0% + + + (0/20) + + + + 0% + + + (0/143) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.notes.repository
+ 
+ import androidx.paging.Pager
+ import androidx.paging.PagingConfig
+ import androidx.paging.PagingData
+ import androidx.paging.map
+ import com.stslex93.notes.core.database.note.NoteDao
+ import com.stslex93.notes.core.notes.model.NoteDataModel
+ import com.stslex93.notes.core.notes.model.toData
+ import com.stslex93.notes.core.notes.model.toEntity
+ import kotlinx.coroutines.Dispatchers
+ import kotlinx.coroutines.flow.Flow
+ import kotlinx.coroutines.flow.flowOn
+ import kotlinx.coroutines.flow.map
+ import kotlinx.coroutines.withContext
+ import javax.inject.Inject
+ import javax.inject.Singleton
+ 
+ @Singleton
+ class NoteRepositoryImpl @Inject constructor(
+     private val dao: NoteDao,
+ ) : NoteRepository {
+ 
+     override fun getNoteFlow(id: Int): Flow<NoteDataModel> = dao.getNoteFlow(id = id)
+         .map { it.toData() }
+         .flowOn(Dispatchers.IO)
+ 
+     override suspend fun getNote(
+         id: Int
+     ): NoteDataModel = withContext(Dispatchers.IO) {
+         dao.getNote(id).toData()
+     }
+ 
+     override fun searchNotes(
+         query: String
+     ): Flow<PagingData<NoteDataModel>> =
+         Pager(
+             PagingConfig(
+                 pageSize = PAGE_SIZE,
+                 enablePlaceholders = IS_PLACEHOLDER_ENABLE
+             )
+         ) {
+             dao.getAll(query)
+         }
+             .flow
+             .map { pagingData ->
+                 pagingData.map { it.toData() }
+             }
+             .flowOn(Dispatchers.IO)
+ 
+     override suspend fun deleteNotesById(ids: List<Int>) {
+         withContext(Dispatchers.IO) {
+             dao.deleteNotesById(ids = ids)
+         }
+     }
+ 
+     override suspend fun insert(note: NoteDataModel) {
+         withContext(Dispatchers.IO) {
+             dao.insert(note = note.toEntity())
+         }
+     }
+ 
+     companion object {
+         private const val PAGE_SIZE = 15
+         private const val IS_PLACEHOLDER_ENABLE = false
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-c/sources/source-2.html b/docs/reports/ns-c/sources/source-2.html new file mode 100644 index 00000000..13eaa0c9 --- /dev/null +++ b/docs/reports/ns-c/sources/source-2.html @@ -0,0 +1,91 @@ + + + + + + + + app Coverage Report > NoteRepository + + + + + + +
+ + +

Coverage Summary for Class: NoteRepository (com.stslex93.notes.core.notes.repository)

+ + + + + + + + + + +
Class + Branch, % +
NoteRepository +
+ +
+
+ + +
+ package com.stslex93.notes.core.notes.repository
+ 
+ import androidx.paging.PagingData
+ import com.stslex93.notes.core.notes.model.NoteDataModel
+ import kotlinx.coroutines.flow.Flow
+ 
+ interface NoteRepository {
+ 
+     fun searchNotes(query: String): Flow<PagingData<NoteDataModel>>
+ 
+     fun getNoteFlow(id: Int): Flow<NoteDataModel>
+ 
+     suspend fun getNote(id: Int): NoteDataModel
+ 
+     suspend fun deleteNotesById(ids: List<Int>)
+ 
+     suspend fun insert(note: NoteDataModel)
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-d/index.html b/docs/reports/ns-d/index.html new file mode 100644 index 00000000..11be8575 --- /dev/null +++ b/docs/reports/ns-d/index.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-d/index_SORT_BY_BLOCK.html b/docs/reports/ns-d/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..85d29a48 --- /dev/null +++ b/docs/reports/ns-d/index_SORT_BY_BLOCK.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-d/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-d/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..e93f9300 --- /dev/null +++ b/docs/reports/ns-d/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-d/index_SORT_BY_CLASS.html b/docs/reports/ns-d/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..47de7a34 --- /dev/null +++ b/docs/reports/ns-d/index_SORT_BY_CLASS.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-d/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-d/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..071505cb --- /dev/null +++ b/docs/reports/ns-d/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-d/index_SORT_BY_LINE.html b/docs/reports/ns-d/index_SORT_BY_LINE.html new file mode 100644 index 00000000..664f00ef --- /dev/null +++ b/docs/reports/ns-d/index_SORT_BY_LINE.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-d/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-d/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..f47cb6c1 --- /dev/null +++ b/docs/reports/ns-d/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-d/index_SORT_BY_METHOD.html b/docs/reports/ns-d/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..cb6fdfa3 --- /dev/null +++ b/docs/reports/ns-d/index_SORT_BY_METHOD.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-d/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-d/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..399371c4 --- /dev/null +++ b/docs/reports/ns-d/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-d/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-d/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..9258f8e1 --- /dev/null +++ b/docs/reports/ns-d/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-d/index_SORT_BY_STATEMENT.html b/docs/reports/ns-d/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..a6c1923d --- /dev/null +++ b/docs/reports/ns-d/index_SORT_BY_STATEMENT.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-d/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-d/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..7af5eea4 --- /dev/null +++ b/docs/reports/ns-d/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,177 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui

+ + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-d/sources/source-1.html b/docs/reports/ns-d/sources/source-1.html new file mode 100644 index 00000000..69ecc720 --- /dev/null +++ b/docs/reports/ns-d/sources/source-1.html @@ -0,0 +1,169 @@ + + + + + + + + app Coverage Report > Extensions + + + + + + +
+ + +

Coverage Summary for Class: Extensions (com.stslex93.notes.core.ui)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
Extensions + + 100% + + + (1/1) + + + + 66.7% + + + (2/3) + + + + + 100% + + + (8/8) + + + + 100% + + + (29/29) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.ui
+ 
+ import androidx.compose.runtime.Composable
+ import androidx.compose.runtime.LaunchedEffect
+ import androidx.lifecycle.Lifecycle
+ import androidx.lifecycle.compose.LocalLifecycleOwner
+ import androidx.lifecycle.flowWithLifecycle
+ import androidx.lifecycle.lifecycleScope
+ import kotlinx.collections.immutable.ImmutableSet
+ import kotlinx.collections.immutable.toImmutableSet
+ import kotlinx.coroutines.flow.SharedFlow
+ import kotlinx.coroutines.flow.launchIn
+ import kotlinx.coroutines.flow.onEach
+ 
+ object Extensions {
+ 
+     @Composable
+     fun <T> SharedFlow<T>.CollectAsEvent(
+         minActionState: Lifecycle.State = Lifecycle.State.STARTED,
+         action: suspend (T) -> Unit,
+     ) {
+         val lifecycleOwner = LocalLifecycleOwner.current
+         LaunchedEffect(Unit) {
+             this@CollectAsEvent
+                 .flowWithLifecycle(
+                     lifecycle = lifecycleOwner.lifecycle,
+                     minActiveState = minActionState
+                 )
+                 .onEach(action)
+                 .launchIn(lifecycleOwner.lifecycleScope)
+         }
+     }
+ 
+     fun <T> ImmutableSet<T>.removeItem(
+         item: T
+     ): ImmutableSet<T> = this.toMutableSet()
+         .apply { remove(item) }
+         .toImmutableSet()
+ 
+     fun <T> ImmutableSet<T>.addItem(
+         item: T
+     ): ImmutableSet<T> = this.toMutableSet()
+         .apply {
+             add(item)
+         }
+         .toImmutableSet()
+ }
+ 
+
+
+
+ + + + + + diff --git a/docs/reports/ns-e/index.html b/docs/reports/ns-e/index.html new file mode 100644 index 00000000..3b1ab16a --- /dev/null +++ b/docs/reports/ns-e/index.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base + + 0% + + + (0/2) + + + + 0% + + + (0/5) + + + + 0% + + + (0/16) + + + + 0% + + + (0/19) + + + + 0% + + + (0/123) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-e/index_SORT_BY_BLOCK.html b/docs/reports/ns-e/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..ca02d11e --- /dev/null +++ b/docs/reports/ns-e/index_SORT_BY_BLOCK.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base + + 0% + + + (0/2) + + + + 0% + + + (0/5) + + + + 0% + + + (0/16) + + + + 0% + + + (0/19) + + + + 0% + + + (0/123) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-e/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-e/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..557c2a2e --- /dev/null +++ b/docs/reports/ns-e/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base + + 0% + + + (0/2) + + + + 0% + + + (0/5) + + + + 0% + + + (0/16) + + + + 0% + + + (0/19) + + + + 0% + + + (0/123) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-e/index_SORT_BY_CLASS.html b/docs/reports/ns-e/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..4777935f --- /dev/null +++ b/docs/reports/ns-e/index_SORT_BY_CLASS.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base + + 0% + + + (0/2) + + + + 0% + + + (0/5) + + + + 0% + + + (0/16) + + + + 0% + + + (0/19) + + + + 0% + + + (0/123) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-e/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-e/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..569c3fcc --- /dev/null +++ b/docs/reports/ns-e/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base + + 0% + + + (0/2) + + + + 0% + + + (0/5) + + + + 0% + + + (0/16) + + + + 0% + + + (0/19) + + + + 0% + + + (0/123) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-e/index_SORT_BY_LINE.html b/docs/reports/ns-e/index_SORT_BY_LINE.html new file mode 100644 index 00000000..bef28dab --- /dev/null +++ b/docs/reports/ns-e/index_SORT_BY_LINE.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base + + 0% + + + (0/2) + + + + 0% + + + (0/5) + + + + 0% + + + (0/16) + + + + 0% + + + (0/19) + + + + 0% + + + (0/123) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-e/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-e/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..bf41840b --- /dev/null +++ b/docs/reports/ns-e/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base + + 0% + + + (0/2) + + + + 0% + + + (0/5) + + + + 0% + + + (0/16) + + + + 0% + + + (0/19) + + + + 0% + + + (0/123) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-e/index_SORT_BY_METHOD.html b/docs/reports/ns-e/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..64bef0cc --- /dev/null +++ b/docs/reports/ns-e/index_SORT_BY_METHOD.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base + + 0% + + + (0/2) + + + + 0% + + + (0/5) + + + + 0% + + + (0/16) + + + + 0% + + + (0/19) + + + + 0% + + + (0/123) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-e/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-e/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..51190468 --- /dev/null +++ b/docs/reports/ns-e/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base + + 0% + + + (0/2) + + + + 0% + + + (0/5) + + + + 0% + + + (0/16) + + + + 0% + + + (0/19) + + + + 0% + + + (0/123) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-e/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-e/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..db468d54 --- /dev/null +++ b/docs/reports/ns-e/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base + + 0% + + + (0/2) + + + + 0% + + + (0/5) + + + + 0% + + + (0/16) + + + + 0% + + + (0/19) + + + + 0% + + + (0/123) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-e/index_SORT_BY_STATEMENT.html b/docs/reports/ns-e/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..3e9447ea --- /dev/null +++ b/docs/reports/ns-e/index_SORT_BY_STATEMENT.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base + + 0% + + + (0/2) + + + + 0% + + + (0/5) + + + + 0% + + + (0/16) + + + + 0% + + + (0/19) + + + + 0% + + + (0/123) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-e/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-e/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..fd06449d --- /dev/null +++ b/docs/reports/ns-e/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,227 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base + + 0% + + + (0/2) + + + + 0% + + + (0/5) + + + + 0% + + + (0/16) + + + + 0% + + + (0/19) + + + + 0% + + + (0/123) + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-e/sources/source-1.html b/docs/reports/ns-e/sources/source-1.html new file mode 100644 index 00000000..e127e233 --- /dev/null +++ b/docs/reports/ns-e/sources/source-1.html @@ -0,0 +1,147 @@ + + + + + + + + app Coverage Report > BaseViewModel + + + + + + +
+ + +

Coverage Summary for Class: BaseViewModel (com.stslex93.notes.core.ui.base)

+ + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseViewModel + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + + 0% + + + (0/8) + + + + 0% + + + (0/31) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.ui.base
+ 
+ import androidx.lifecycle.ViewModel
+ import androidx.lifecycle.viewModelScope
+ import com.stslex93.notes.core.ui.base.store.Store
+ import com.stslex93.notes.core.ui.base.store.Store.Action
+ import com.stslex93.notes.core.ui.base.store.Store.Event
+ import com.stslex93.notes.core.ui.base.store.Store.State
+ import kotlinx.coroutines.flow.SharedFlow
+ import kotlinx.coroutines.flow.StateFlow
+ 
+ open class BaseViewModel<out S : State, out E : Event, in A : Action>(
+     private val store: Store<S, E, A>
+ ) : ViewModel() {
+ 
+     val state: StateFlow<S> = store.state
+     val event: SharedFlow<E> = store.event
+ 
+     init {
+         store.init(viewModelScope)
+     }
+ 
+     fun sendAction(action: A) {
+         store.processAction(action)
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-e/sources/source-2.html b/docs/reports/ns-e/sources/source-2.html new file mode 100644 index 00000000..9d231684 --- /dev/null +++ b/docs/reports/ns-e/sources/source-2.html @@ -0,0 +1,153 @@ + + + + + + + + app Coverage Report > ViewModelFactory + + + + + + +
+ + +

Coverage Summary for Class: ViewModelFactory (com.stslex93.notes.core.ui.base)

+ + + + + + + + + + + + + + + + + + + +
Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
ViewModelFactory + + 0% + + + (0/1) + + + + 0% + + + (0/2) + + + + 0% + + + (0/16) + + + + 0% + + + (0/11) + + + + 0% + + + (0/92) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.ui.base
+ 
+ import androidx.lifecycle.ViewModel
+ import androidx.lifecycle.ViewModelProvider
+ import javax.inject.Inject
+ import javax.inject.Provider
+ 
+ class ViewModelFactory @Inject constructor(
+     private val viewModelMap: Map<Class<out ViewModel>, @JvmSuppressWildcards Provider<ViewModel>>
+ ) : ViewModelProvider.Factory {
+ 
+     @Suppress("UNCHECKED_CAST")
+     override fun <T : ViewModel> create(
+         modelClass: Class<T>
+     ): T = viewModelMap
+         .getOrElse(modelClass) {
+             viewModelMap.firstNotNullOfOrNull { entry ->
+                 entry.takeIf {
+                     modelClass.isAssignableFrom(it.key)
+                 }?.value
+             }
+         }
+         ?.get() as? T?
+         ?: throw IllegalArgumentException("Unknown model class $modelClass")
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-e/sources/source-3.html b/docs/reports/ns-e/sources/source-3.html new file mode 100644 index 00000000..a5577b30 --- /dev/null +++ b/docs/reports/ns-e/sources/source-3.html @@ -0,0 +1,101 @@ + + + + + + + + app Coverage Report > DaggerViewModelKt + + + + + + +
+ + +

Coverage Summary for Class: DaggerViewModelKt (com.stslex93.notes.core.ui.base)

+ + + + + + + + + + + + +
Class + Method, % + + Branch, % +
DaggerViewModelKt + + 0% + + + (0/1) + + +
+ +
+
+ + +
+ package com.stslex93.notes.core.ui.base
+ 
+ import androidx.compose.runtime.Composable
+ import androidx.lifecycle.ViewModel
+ import androidx.lifecycle.ViewModelProvider
+ import androidx.lifecycle.viewmodel.compose.viewModel
+ 
+ @Composable
+ inline fun <reified T : ViewModel> daggerViewModel(
+     key: String? = null,
+     crossinline factory: () -> ViewModelProvider.Factory
+ ): T = viewModel(
+     modelClass = T::class.java,
+     key = key,
+     factory = factory()
+ )
+
+
+
+ + + + + + diff --git a/docs/reports/ns-f/index.html b/docs/reports/ns-f/index.html new file mode 100644 index 00000000..88ba2785 --- /dev/null +++ b/docs/reports/ns-f/index.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base.store + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-f/index_SORT_BY_BLOCK.html b/docs/reports/ns-f/index_SORT_BY_BLOCK.html new file mode 100644 index 00000000..39864608 --- /dev/null +++ b/docs/reports/ns-f/index_SORT_BY_BLOCK.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base.store + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-f/index_SORT_BY_BLOCK_DESC.html b/docs/reports/ns-f/index_SORT_BY_BLOCK_DESC.html new file mode 100644 index 00000000..7b0e876e --- /dev/null +++ b/docs/reports/ns-f/index_SORT_BY_BLOCK_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base.store + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-f/index_SORT_BY_CLASS.html b/docs/reports/ns-f/index_SORT_BY_CLASS.html new file mode 100644 index 00000000..a48e7fcc --- /dev/null +++ b/docs/reports/ns-f/index_SORT_BY_CLASS.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base.store + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-f/index_SORT_BY_CLASS_DESC.html b/docs/reports/ns-f/index_SORT_BY_CLASS_DESC.html new file mode 100644 index 00000000..e43e3f7c --- /dev/null +++ b/docs/reports/ns-f/index_SORT_BY_CLASS_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base.store + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-f/index_SORT_BY_LINE.html b/docs/reports/ns-f/index_SORT_BY_LINE.html new file mode 100644 index 00000000..f3c59fe9 --- /dev/null +++ b/docs/reports/ns-f/index_SORT_BY_LINE.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base.store + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-f/index_SORT_BY_LINE_DESC.html b/docs/reports/ns-f/index_SORT_BY_LINE_DESC.html new file mode 100644 index 00000000..d09f7c5b --- /dev/null +++ b/docs/reports/ns-f/index_SORT_BY_LINE_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base.store + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-f/index_SORT_BY_METHOD.html b/docs/reports/ns-f/index_SORT_BY_METHOD.html new file mode 100644 index 00000000..4c1fee60 --- /dev/null +++ b/docs/reports/ns-f/index_SORT_BY_METHOD.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base.store + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-f/index_SORT_BY_METHOD_DESC.html b/docs/reports/ns-f/index_SORT_BY_METHOD_DESC.html new file mode 100644 index 00000000..8465db58 --- /dev/null +++ b/docs/reports/ns-f/index_SORT_BY_METHOD_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base.store + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-f/index_SORT_BY_NAME_DESC.html b/docs/reports/ns-f/index_SORT_BY_NAME_DESC.html new file mode 100644 index 00000000..95f06344 --- /dev/null +++ b/docs/reports/ns-f/index_SORT_BY_NAME_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base.store + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-f/index_SORT_BY_STATEMENT.html b/docs/reports/ns-f/index_SORT_BY_STATEMENT.html new file mode 100644 index 00000000..94d340fb --- /dev/null +++ b/docs/reports/ns-f/index_SORT_BY_STATEMENT.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base.store + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-f/index_SORT_BY_STATEMENT_DESC.html b/docs/reports/ns-f/index_SORT_BY_STATEMENT_DESC.html new file mode 100644 index 00000000..70aa27b9 --- /dev/null +++ b/docs/reports/ns-f/index_SORT_BY_STATEMENT_DESC.html @@ -0,0 +1,191 @@ + + + + + + app Coverage Report > com.stslex93.notes.core.ui.base.store + + + + + + +
+ + + +

Coverage Summary for Package: com.stslex93.notes.core.ui.base.store

+ + + + + + + + + + + + + + + + + +
Package + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
com.stslex93.notes.core.ui.base.store + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + + + + + + + + + + + + + + + + + +
+Class + Class, % + + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/2) + + + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+ + + + + + diff --git a/docs/reports/ns-f/sources/source-1.html b/docs/reports/ns-f/sources/source-1.html new file mode 100644 index 00000000..632afbd5 --- /dev/null +++ b/docs/reports/ns-f/sources/source-1.html @@ -0,0 +1,216 @@ + + + + + + + + app Coverage Report > BaseStoreImpl + + + + + + +
+ + +

Coverage Summary for Class: BaseStoreImpl (com.stslex93.notes.core.ui.base.store)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Class + Method, % + + Branch, % + + Line, % + + Instruction, % +
BaseStoreImpl + + 0% + + + (0/6) + + + + 0% + + + (0/2) + + + + 0% + + + (0/8) + + + + 0% + + + (0/55) + +
BaseStoreImpl$sendEvent$1 + + 0% + + + (0/1) + + + + + 0% + + + (0/1) + + + + 0% + + + (0/14) + +
Total + + 0% + + + (0/7) + + + + 0% + + + (0/2) + + + + 0% + + + (0/9) + + + + 0% + + + (0/69) + +
+ +
+
+ + +
+ package com.stslex93.notes.core.ui.base.store
+ 
+ import com.stslex93.notes.core.ui.base.store.Store.Action
+ import com.stslex93.notes.core.ui.base.store.Store.Event
+ import com.stslex93.notes.core.ui.base.store.Store.State
+ import kotlinx.coroutines.CoroutineScope
+ import kotlinx.coroutines.flow.MutableSharedFlow
+ import kotlinx.coroutines.flow.MutableStateFlow
+ import kotlinx.coroutines.flow.update
+ import kotlinx.coroutines.launch
+ 
+ abstract class BaseStoreImpl<S : State, E : Event, A : Action> :
+     Store<S, E, A>,
+     StoreImpl<S, E, A> {
+ 
+     private var _scope: CoroutineScope? = null
+     val scope: CoroutineScope
+         get() = requireNotNull(_scope)
+ 
+     @Suppress("LeakingThis")
+     override val state: MutableStateFlow<S> = MutableStateFlow(initialState)
+     override val event: MutableSharedFlow<E> = MutableSharedFlow()
+ 
+     override fun updateState(update: (S) -> S) {
+         state.update(update)
+     }
+ 
+     override fun sendEvent(event: E) {
+         scope.launch {
+             this@BaseStoreImpl.event.emit(event)
+         }
+     }
+ 
+     override fun init(scope: CoroutineScope) {
+         _scope = scope
+     }
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-f/sources/source-2.html b/docs/reports/ns-f/sources/source-2.html new file mode 100644 index 00000000..51e941c7 --- /dev/null +++ b/docs/reports/ns-f/sources/source-2.html @@ -0,0 +1,87 @@ + + + + + + + + app Coverage Report > StoreImpl + + + + + + +
+ + +

Coverage Summary for Class: StoreImpl (com.stslex93.notes.core.ui.base.store)

+ + + + + + + + + + +
Class + Branch, % +
StoreImpl +
+ +
+
+ + +
+ package com.stslex93.notes.core.ui.base.store
+ 
+ import com.stslex93.notes.core.ui.base.store.Store.Action
+ import com.stslex93.notes.core.ui.base.store.Store.Event
+ import com.stslex93.notes.core.ui.base.store.Store.State
+ 
+ internal interface StoreImpl<S : State, in E : Event, A : Action> {
+ 
+     val initialState: S
+ 
+     fun sendEvent(event: E)
+ 
+     fun updateState(update: (S) -> S)
+ }
+
+
+
+ + + + + + diff --git a/docs/reports/ns-f/sources/source-3.html b/docs/reports/ns-f/sources/source-3.html new file mode 100644 index 00000000..0384f51d --- /dev/null +++ b/docs/reports/ns-f/sources/source-3.html @@ -0,0 +1,82 @@ + + + + + + + + app Coverage Report > Store + + + + + + +
+ + +

Coverage Summary for Class: Store (com.stslex93.notes.core.ui.base.store)

+ + + + + + + + + + + + + + + + + + + +
Class + Branch, % +
Store$Action +
Store$Event +
Store$State +
Total +
+ +
+
+ + Source code is not available
+
+ + + + + +