Twelve: Add Coil

Change-Id: Ie34972afa72e39fc407bafd468775e39b0a85108
diff --git a/app/Android.bp b/app/Android.bp
index 338dad1..d0cb2b9 100644
--- a/app/Android.bp
+++ b/app/Android.bp
@@ -39,13 +39,11 @@
 
     static_libs: [
         // DO NOT EDIT THIS SECTION MANUALLY
-        "kotlin-stdlib",
         "androidx.activity_activity",
         "androidx.appcompat_appcompat",
         "androidx-constraintlayout_constraintlayout",
         "androidx.core_core-ktx",
         "androidx.fragment_fragment-ktx",
-        "androidx.lifecycle_lifecycle-service",
         "Twelve_androidx.media3_media3-common-ktx",
         "Twelve_androidx.media3_media3-exoplayer",
         "Twelve_androidx.media3_media3-exoplayer-midi",
@@ -57,9 +55,13 @@
         "androidx.room_room-runtime",
         "androidx.room_room-ktx",
         "androidx.viewpager2_viewpager2",
-        "kotlinx_coroutines_guava",
+        "Twelve_io.coil-kt.coil3_coil",
+        "Twelve_io.coil-kt.coil3_coil-network-okhttp",
         "Twelve_com.google.android.material_material",
         "Twelve_com.github.bogerchan_Nier-Visualizer",
+        "kotlin-stdlib",
+        "androidx.lifecycle_lifecycle-service",
+        "kotlinx_coroutines_guava",
     ],
 
     optimize: {
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 650dfd6..ad89b6c 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -90,6 +90,8 @@
     kapt(libs.androidx.room.compiler)
     implementation(libs.androidx.room.ktx)
     implementation(libs.androidx.viewpager2)
+    implementation(libs.coil)
+    implementation(libs.coil.network.okhttp)
     implementation(libs.kotlinx.coroutines.guava)
     implementation(libs.material)
     implementation(libs.nier.visualizer) {
diff --git a/app/libs/Android.bp b/app/libs/Android.bp
index cb7383b..5fa139d 100644
--- a/app/libs/Android.bp
+++ b/app/libs/Android.bp
@@ -529,6 +529,272 @@
 }
 
 java_import {
+    name: "Twelve_com.squareup.okhttp3_okhttp-nodeps",
+    jars: ["com/squareup/okhttp3/okhttp/4.12.0/okhttp-4.12.0.jar"],
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+}
+
+java_library_static {
+    name: "Twelve_com.squareup.okhttp3_okhttp",
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    static_libs: [
+        "Twelve_com.squareup.okhttp3_okhttp-nodeps",
+        "Twelve_com.squareup.okio_okio",
+        "kotlin-stdlib-jdk8",
+    ],
+    java_version: "1.7",
+}
+
+java_library_static {
+    name: "Twelve_com.squareup.okio_okio",
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    static_libs: [
+        "Twelve_com.squareup.okio_okio-jvm",
+    ],
+    java_version: "1.7",
+}
+
+java_import {
+    name: "Twelve_com.squareup.okio_okio-jvm-nodeps",
+    jars: ["com/squareup/okio/okio-jvm/3.9.1/okio-jvm-3.9.1.jar"],
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+}
+
+java_library_static {
+    name: "Twelve_com.squareup.okio_okio-jvm",
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    static_libs: [
+        "Twelve_com.squareup.okio_okio-jvm-nodeps",
+        "kotlin-stdlib",
+    ],
+    java_version: "1.7",
+}
+
+java_library_static {
+    name: "Twelve_io.coil-kt.coil3_coil",
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    static_libs: [
+        "Twelve_io.coil-kt.coil3_coil-android",
+    ],
+    java_version: "1.7",
+}
+
+android_library_import {
+    name: "Twelve_io.coil-kt.coil3_coil-android-nodeps",
+    aars: ["io/coil-kt/coil3/coil-android/3.0.0-rc01/coil-release.aar"],
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    static_libs: [
+        "Twelve_io.coil-kt.coil3_coil-core",
+        "kotlin-stdlib",
+    ],
+}
+
+android_library {
+    name: "Twelve_io.coil-kt.coil3_coil-android",
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    manifest: "io/coil-kt/coil3/coil-android/3.0.0-rc01/AndroidManifest.xml",
+    static_libs: [
+        "Twelve_io.coil-kt.coil3_coil-android-nodeps",
+        "Twelve_io.coil-kt.coil3_coil-core",
+        "kotlin-stdlib",
+    ],
+    java_version: "1.7",
+}
+
+java_library_static {
+    name: "Twelve_io.coil-kt.coil3_coil-core",
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    static_libs: [
+        "Twelve_io.coil-kt.coil3_coil-core-android",
+    ],
+    java_version: "1.7",
+}
+
+android_library_import {
+    name: "Twelve_io.coil-kt.coil3_coil-core-android-nodeps",
+    aars: ["io/coil-kt/coil3/coil-core-android/3.0.0-rc01/coil-core-release.aar"],
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    static_libs: [
+        "Twelve_com.squareup.okio_okio",
+        "androidx.annotation_annotation",
+        "androidx.appcompat_appcompat-resources",
+        "androidx.core_core-ktx",
+        "androidx.exifinterface_exifinterface",
+        "androidx.lifecycle_lifecycle-runtime",
+        "androidx.profileinstaller_profileinstaller",
+        "kotlin-stdlib",
+        "kotlinx-coroutines-android",
+        "kotlinx-coroutines-core",
+    ],
+}
+
+android_library {
+    name: "Twelve_io.coil-kt.coil3_coil-core-android",
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    manifest: "io/coil-kt/coil3/coil-core-android/3.0.0-rc01/AndroidManifest.xml",
+    static_libs: [
+        "Twelve_io.coil-kt.coil3_coil-core-android-nodeps",
+        "Twelve_com.squareup.okio_okio",
+        "androidx.annotation_annotation",
+        "androidx.appcompat_appcompat-resources",
+        "androidx.core_core-ktx",
+        "androidx.exifinterface_exifinterface",
+        "androidx.lifecycle_lifecycle-runtime",
+        "androidx.profileinstaller_profileinstaller",
+        "kotlin-stdlib",
+        "kotlinx-coroutines-android",
+        "kotlinx-coroutines-core",
+    ],
+    java_version: "1.7",
+}
+
+java_library_static {
+    name: "Twelve_io.coil-kt.coil3_coil-network-core",
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    static_libs: [
+        "Twelve_io.coil-kt.coil3_coil-network-core-android",
+    ],
+    java_version: "1.7",
+}
+
+android_library_import {
+    name: "Twelve_io.coil-kt.coil3_coil-network-core-android-nodeps",
+    aars: ["io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/coil-network-core-release.aar"],
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    static_libs: [
+        "Twelve_io.coil-kt.coil3_coil-core",
+        "androidx.core_core-ktx",
+        "kotlin-stdlib",
+    ],
+}
+
+android_library {
+    name: "Twelve_io.coil-kt.coil3_coil-network-core-android",
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    manifest: "io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/AndroidManifest.xml",
+    static_libs: [
+        "Twelve_io.coil-kt.coil3_coil-network-core-android-nodeps",
+        "Twelve_io.coil-kt.coil3_coil-core",
+        "androidx.core_core-ktx",
+        "kotlin-stdlib",
+    ],
+    java_version: "1.7",
+}
+
+java_library_static {
+    name: "Twelve_io.coil-kt.coil3_coil-network-okhttp",
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    static_libs: [
+        "Twelve_io.coil-kt.coil3_coil-network-okhttp-jvm",
+    ],
+    java_version: "1.7",
+}
+
+java_import {
+    name: "Twelve_io.coil-kt.coil3_coil-network-okhttp-jvm-nodeps",
+    jars: ["io/coil-kt/coil3/coil-network-okhttp-jvm/3.0.0-rc01/coil-network-okhttp-jvm-3.0.0-rc01.jar"],
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+}
+
+java_library_static {
+    name: "Twelve_io.coil-kt.coil3_coil-network-okhttp-jvm",
+    sdk_version: "35",
+    min_sdk_version: "14",
+    apex_available: [
+        "//apex_available:platform",
+        "//apex_available:anyapex",
+    ],
+    static_libs: [
+        "Twelve_io.coil-kt.coil3_coil-network-okhttp-jvm-nodeps",
+        "Twelve_com.squareup.okhttp3_okhttp",
+        "Twelve_io.coil-kt.coil3_coil-core",
+        "Twelve_io.coil-kt.coil3_coil-network-core",
+        "kotlin-stdlib",
+    ],
+    java_version: "1.7",
+}
+
+java_import {
     name: "Twelve_org.checkerframework_checker-qual-nodeps",
     jars: ["org/checkerframework/checker-qual/3.41.0/checker-qual-3.41.0.jar"],
     sdk_version: "35",
diff --git a/app/libs/com/squareup/okhttp3/okhttp/4.12.0/okhttp-4.12.0.jar b/app/libs/com/squareup/okhttp3/okhttp/4.12.0/okhttp-4.12.0.jar
new file mode 100644
index 0000000..faf3fa8
--- /dev/null
+++ b/app/libs/com/squareup/okhttp3/okhttp/4.12.0/okhttp-4.12.0.jar
Binary files differ
diff --git a/app/libs/com/squareup/okhttp3/okhttp/4.12.0/okhttp-4.12.0.jar.license b/app/libs/com/squareup/okhttp3/okhttp/4.12.0/okhttp-4.12.0.jar.license
new file mode 100644
index 0000000..052d552
--- /dev/null
+++ b/app/libs/com/squareup/okhttp3/okhttp/4.12.0/okhttp-4.12.0.jar.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2024 Square, Inc.
+
+SPDX-License-Identifier: Apache-2.0
diff --git a/app/libs/com/squareup/okio/okio-jvm/3.9.1/okio-jvm-3.9.1.jar b/app/libs/com/squareup/okio/okio-jvm/3.9.1/okio-jvm-3.9.1.jar
new file mode 100644
index 0000000..211e015
--- /dev/null
+++ b/app/libs/com/squareup/okio/okio-jvm/3.9.1/okio-jvm-3.9.1.jar
Binary files differ
diff --git a/app/libs/com/squareup/okio/okio-jvm/3.9.1/okio-jvm-3.9.1.jar.license b/app/libs/com/squareup/okio/okio-jvm/3.9.1/okio-jvm-3.9.1.jar.license
new file mode 100644
index 0000000..052d552
--- /dev/null
+++ b/app/libs/com/squareup/okio/okio-jvm/3.9.1/okio-jvm-3.9.1.jar.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2024 Square, Inc.
+
+SPDX-License-Identifier: Apache-2.0
diff --git a/app/libs/io/coil-kt/coil3/coil-android/3.0.0-rc01/AndroidManifest.xml b/app/libs/io/coil-kt/coil3/coil-android/3.0.0-rc01/AndroidManifest.xml
new file mode 100644
index 0000000..2ef0d41
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-android/3.0.0-rc01/AndroidManifest.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="coil3.singleton" >
+
+    <uses-sdk android:minSdkVersion="21" />
+
+</manifest>
\ No newline at end of file
diff --git a/app/libs/io/coil-kt/coil3/coil-android/3.0.0-rc01/AndroidManifest.xml.license b/app/libs/io/coil-kt/coil3/coil-android/3.0.0-rc01/AndroidManifest.xml.license
new file mode 100644
index 0000000..ca4aa85
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-android/3.0.0-rc01/AndroidManifest.xml.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2019-2024 Coil Contributors
+
+SPDX-License-Identifier: Apache-2.0
diff --git a/app/libs/io/coil-kt/coil3/coil-android/3.0.0-rc01/coil-release.aar b/app/libs/io/coil-kt/coil3/coil-android/3.0.0-rc01/coil-release.aar
new file mode 100644
index 0000000..12af9a2
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-android/3.0.0-rc01/coil-release.aar
Binary files differ
diff --git a/app/libs/io/coil-kt/coil3/coil-android/3.0.0-rc01/coil-release.aar.license b/app/libs/io/coil-kt/coil3/coil-android/3.0.0-rc01/coil-release.aar.license
new file mode 100644
index 0000000..ca4aa85
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-android/3.0.0-rc01/coil-release.aar.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2019-2024 Coil Contributors
+
+SPDX-License-Identifier: Apache-2.0
diff --git a/app/libs/io/coil-kt/coil3/coil-core-android/3.0.0-rc01/AndroidManifest.xml b/app/libs/io/coil-kt/coil3/coil-core-android/3.0.0-rc01/AndroidManifest.xml
new file mode 100644
index 0000000..24b3421
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-core-android/3.0.0-rc01/AndroidManifest.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="coil3.core" >
+
+    <uses-sdk android:minSdkVersion="21" />
+
+</manifest>
\ No newline at end of file
diff --git a/app/libs/io/coil-kt/coil3/coil-core-android/3.0.0-rc01/AndroidManifest.xml.license b/app/libs/io/coil-kt/coil3/coil-core-android/3.0.0-rc01/AndroidManifest.xml.license
new file mode 100644
index 0000000..ca4aa85
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-core-android/3.0.0-rc01/AndroidManifest.xml.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2019-2024 Coil Contributors
+
+SPDX-License-Identifier: Apache-2.0
diff --git a/app/libs/io/coil-kt/coil3/coil-core-android/3.0.0-rc01/coil-core-release.aar b/app/libs/io/coil-kt/coil3/coil-core-android/3.0.0-rc01/coil-core-release.aar
new file mode 100644
index 0000000..600e5c9
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-core-android/3.0.0-rc01/coil-core-release.aar
Binary files differ
diff --git a/app/libs/io/coil-kt/coil3/coil-core-android/3.0.0-rc01/coil-core-release.aar.license b/app/libs/io/coil-kt/coil3/coil-core-android/3.0.0-rc01/coil-core-release.aar.license
new file mode 100644
index 0000000..ca4aa85
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-core-android/3.0.0-rc01/coil-core-release.aar.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2019-2024 Coil Contributors
+
+SPDX-License-Identifier: Apache-2.0
diff --git a/app/libs/io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/AndroidManifest.xml b/app/libs/io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/AndroidManifest.xml
new file mode 100644
index 0000000..2fa922d
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/AndroidManifest.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="coil3.network" >
+
+    <uses-sdk android:minSdkVersion="21" />
+
+</manifest>
\ No newline at end of file
diff --git a/app/libs/io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/AndroidManifest.xml.license b/app/libs/io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/AndroidManifest.xml.license
new file mode 100644
index 0000000..ca4aa85
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/AndroidManifest.xml.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2019-2024 Coil Contributors
+
+SPDX-License-Identifier: Apache-2.0
diff --git a/app/libs/io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/coil-network-core-release.aar b/app/libs/io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/coil-network-core-release.aar
new file mode 100644
index 0000000..9341b1a
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/coil-network-core-release.aar
Binary files differ
diff --git a/app/libs/io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/coil-network-core-release.aar.license b/app/libs/io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/coil-network-core-release.aar.license
new file mode 100644
index 0000000..ca4aa85
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-network-core-android/3.0.0-rc01/coil-network-core-release.aar.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2019-2024 Coil Contributors
+
+SPDX-License-Identifier: Apache-2.0
diff --git a/app/libs/io/coil-kt/coil3/coil-network-okhttp-jvm/3.0.0-rc01/coil-network-okhttp-jvm-3.0.0-rc01.jar b/app/libs/io/coil-kt/coil3/coil-network-okhttp-jvm/3.0.0-rc01/coil-network-okhttp-jvm-3.0.0-rc01.jar
new file mode 100644
index 0000000..351051f
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-network-okhttp-jvm/3.0.0-rc01/coil-network-okhttp-jvm-3.0.0-rc01.jar
Binary files differ
diff --git a/app/libs/io/coil-kt/coil3/coil-network-okhttp-jvm/3.0.0-rc01/coil-network-okhttp-jvm-3.0.0-rc01.jar.license b/app/libs/io/coil-kt/coil3/coil-network-okhttp-jvm/3.0.0-rc01/coil-network-okhttp-jvm-3.0.0-rc01.jar.license
new file mode 100644
index 0000000..ca4aa85
--- /dev/null
+++ b/app/libs/io/coil-kt/coil3/coil-network-okhttp-jvm/3.0.0-rc01/coil-network-okhttp-jvm-3.0.0-rc01.jar.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2019-2024 Coil Contributors
+
+SPDX-License-Identifier: Apache-2.0
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index fcd4667..1914a77 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -8,6 +8,7 @@
 kotlin = "1.9.23"
 activity = "1.9.2"
 appcompat = "1.7.0"
+coil = "3.0.0-rc01"
 constraintlayout = "2.1.4"
 core = "1.13.1"
 fragment = "1.8.3"
@@ -40,6 +41,8 @@
 androidx-room-compiler = { group = "androidx.room", name = "room-compiler", version.ref = "room" }
 androidx-room-ktx = { group = "androidx.room", name = "room-ktx", version.ref = "room" }
 androidx-viewpager2 = { group = "androidx.viewpager2", name = "viewpager2", version.ref = "viewpager2" }
+coil = { group = "io.coil-kt.coil3", name = "coil", version.ref = "coil" }
+coil-network-okhttp = { group = "io.coil-kt.coil3", name = "coil-network-okhttp", version.ref = "coil" }
 kotlinx-coroutines-guava = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-guava", version.ref = "kotlinx-coroutines" }
 material = { group = "com.google.android.material", name = "material", version.ref = "material" }
 nier-visualizer = { group = "com.github.bogerchan", name = "Nier-Visualizer", version.ref = "nier-visualizer" }