From f5cc4ef2e5430af8ad0a097589ec840e6072bce7 Mon Sep 17 00:00:00 2001 From: xfy Date: Wed, 20 May 2026 15:55:08 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E5=AE=8C=E6=88=90=E7=BA=AF=20Andro?= =?UTF-8?q?id=20=E8=BF=81=E7=A7=BB=EF=BC=8C=E6=B8=85=E7=90=86=E6=97=A7=20K?= =?UTF-8?q?MP=20=E6=A8=A1=E5=9D=97=E5=B9=B6=E6=B7=BB=E5=8A=A0=20app/core?= =?UTF-8?q?=20=E6=96=B0=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 删除遗留的 androidApp/、shared/ 等 KMP 结构文件 - 将新的 app/、core/ 纯 Android 模块纳入版本控制 Co-Authored-By: Claude Opus 4.7 (1M context) --- {androidApp => app}/AGENTS.md | 0 {androidApp => app}/build.gradle.kts | 2 +- {androidApp => app}/proguard-rules.pro | 0 {androidApp => app}/src/main/AGENTS.md | 0 .../src/main/AndroidManifest.xml | 0 .../src/main/assets/app_icon.png | Bin .../src/main/assets/gifs/001.gif | Bin .../src/main/assets/gifs/002.gif | Bin .../src/main/assets/gifs/003.gif | Bin .../src/main/assets/gifs/004.gif | Bin .../src/main/assets/gifs/005.gif | Bin .../src/main/assets/gifs/006.gif | Bin .../src/main/assets/gifs/007.gif | Bin .../src/main/assets/gifs/008.gif | Bin .../src/main/assets/gifs/009.gif | Bin .../src/main/assets/gifs/010.gif | Bin .../src/main/assets/gifs/011.gif | Bin .../src/main/assets/gifs/012.gif | Bin .../src/main/assets/gifs/013.gif | Bin .../src/main/assets/gifs/014.gif | Bin .../src/main/assets/gifs/015.gif | Bin .../src/main/assets/gifs/016.gif | Bin .../src/main/assets/gifs/017.gif | Bin .../src/main/assets/gifs/018.gif | Bin .../src/main/assets/gifs/019.gif | Bin .../src/main/assets/gifs/020.gif | Bin .../src/main/assets/gifs/021.gif | Bin .../src/main/assets/gifs/022.gif | Bin .../src/main/assets/gifs/023.gif | Bin .../src/main/assets/gifs/024.gif | Bin .../src/main/assets/gifs/025.gif | Bin .../src/main/assets/gifs/026.gif | Bin .../src/main/assets/gifs/027.gif | Bin .../src/main/assets/gifs/028.gif | Bin .../src/main/assets/gifs/029.gif | Bin .../src/main/assets/gifs/030.gif | Bin .../src/main/assets/gifs/031.gif | Bin .../src/main/assets/gifs/032.gif | Bin .../src/main/assets/gifs/033.gif | Bin .../src/main/assets/gifs/034.gif | Bin .../src/main/assets/gifs/035.gif | Bin .../src/main/assets/gifs/036.gif | Bin .../src/main/assets/gifs/037.gif | Bin .../src/main/assets/gifs/038.gif | Bin .../src/main/assets/gifs/039.gif | Bin .../src/main/assets/gifs/040.gif | Bin .../src/main/assets/gifs/041.gif | Bin .../src/main/assets/gifs/042.gif | Bin .../src/main/assets/gifs/043.gif | Bin .../src/main/assets/gifs/044.gif | Bin .../src/main/assets/gifs/045.gif | Bin .../src/main/assets/gifs/046.gif | Bin .../src/main/assets/gifs/047.gif | Bin .../src/main/assets/gifs/048.gif | Bin .../src/main/assets/gifs/049.gif | Bin .../src/main/assets/gifs/050.gif | Bin .../src/main/assets/gifs/051.gif | Bin .../src/main/assets/gifs/052.gif | Bin .../src/main/assets/gifs/053.gif | Bin .../src/main/assets/gifs/054.gif | Bin .../src/main/assets/gifs/055.gif | Bin .../src/main/assets/gifs/056.gif | Bin .../src/main/assets/gifs/057.gif | Bin .../src/main/assets/gifs/058.gif | Bin .../src/main/assets/gifs/059.gif | Bin .../src/main/assets/gifs/060.gif | Bin .../src/main/assets/gifs/061.gif | Bin .../src/main/assets/gifs/062.gif | Bin .../src/main/assets/gifs/063.gif | Bin .../src/main/assets/gifs/064.gif | Bin .../src/main/assets/gifs/065.gif | Bin .../src/main/assets/gifs/066.gif | Bin .../src/main/assets/gifs/067.gif | Bin .../src/main/assets/gifs/068.gif | Bin .../src/main/assets/gifs/069.gif | Bin .../src/main/assets/gifs/070.gif | Bin .../src/main/assets/gifs/071.gif | Bin .../src/main/assets/gifs/072.gif | Bin .../src/main/assets/gifs/073.gif | Bin .../src/main/assets/gifs/074.gif | Bin .../src/main/assets/gifs/075.gif | Bin .../src/main/assets/gifs/076.gif | Bin .../src/main/assets/gifs/077.gif | Bin .../src/main/assets/gifs/078.gif | Bin .../src/main/assets/gifs/079.gif | Bin .../src/main/assets/gifs/080.gif | Bin .../src/main/assets/gifs/081.gif | Bin .../src/main/assets/gifs/082.gif | Bin .../src/main/assets/gifs/083.gif | Bin .../src/main/assets/gifs/084.gif | Bin .../src/main/assets/gifs/085.gif | Bin .../src/main/assets/gifs/086.gif | Bin .../src/main/assets/gifs/087.gif | Bin .../src/main/assets/gifs/088.gif | Bin .../src/main/assets/gifs/089.gif | Bin .../src/main/assets/gifs/090.gif | Bin .../src/main/assets/gifs/091.gif | Bin .../src/main/assets/gifs/092.gif | Bin .../src/main/assets/gifs/093.gif | Bin .../src/main/assets/gifs/094.gif | Bin .../src/main/assets/gifs/095.gif | Bin .../src/main/assets/gifs/096.gif | Bin .../src/main/assets/gifs/097.gif | Bin .../src/main/assets/gifs/098.gif | Bin .../src/main/assets/gifs/099.gif | Bin .../src/main/assets/gifs/100.gif | Bin .../src/main/assets/gifs/101.gif | Bin .../src/main/assets/gifs/102.gif | Bin .../src/main/assets/gifs/103.gif | Bin .../src/main/assets/gifs/104.gif | Bin .../src/main/assets/gifs/105.gif | Bin .../src/main/assets/gifs/106.gif | Bin .../src/main/assets/gifs/107.gif | Bin .../src/main/assets/gifs/108.gif | Bin .../src/main/assets/gifs/109.gif | Bin .../src/main/assets/gifs/110.gif | Bin .../src/main/assets/gifs/111.gif | Bin .../src/main/assets/gifs/112.gif | Bin .../src/main/assets/gifs/113.gif | Bin .../src/main/assets/gifs/114.gif | Bin .../src/main/assets/gifs/115.gif | Bin .../src/main/assets/gifs/116.gif | Bin .../src/main/assets/gifs/117.gif | Bin .../src/main/assets/gifs/118.gif | Bin .../src/main/assets/gifs/119.gif | Bin .../src/main/assets/gifs/120.gif | Bin .../src/main/assets/gifs/121.gif | Bin .../src/main/assets/gifs/122.gif | Bin .../src/main/assets/gifs/123.gif | Bin .../src/main/assets/gifs/124.gif | Bin .../src/main/assets/gifs/125.gif | Bin .../src/main/assets/gifs/126.gif | Bin .../src/main/assets/gifs/127.gif | Bin .../src/main/assets/gifs/128.gif | Bin .../src/main/assets/gifs/129.gif | Bin .../src/main/assets/gifs/130.gif | Bin .../src/main/assets/gifs/131.gif | Bin .../src/main/assets/gifs/132.gif | Bin .../src/main/assets/gifs/133.gif | Bin .../src/main/assets/gifs/134.gif | Bin .../src/main/assets/gifs/135.gif | Bin .../src/main/assets/gifs/136.gif | Bin .../src/main/assets/gifs/137.gif | Bin .../src/main/assets/gifs/138.gif | Bin .../src/main/assets/gifs/139.gif | Bin .../src/main/assets/gifs/140.gif | Bin .../src/main/assets/gifs/141.gif | Bin .../src/main/assets/gifs/142.gif | Bin .../src/main/assets/gifs/143.gif | Bin .../src/main/assets/gifs/144.gif | Bin .../src/main/assets/gifs/145.gif | Bin .../src/main/assets/gifs/146.gif | Bin .../src/main/assets/gifs/147.gif | Bin .../src/main/assets/gifs/148.gif | Bin .../src/main/assets/gifs/149.gif | Bin .../src/main/assets/gifs/150.gif | Bin .../src/main/assets/gifs/151.gif | Bin .../src/main/assets/gifs/152.gif | Bin .../main/kotlin/plus/rua/project/AGENTS.md | 0 .../kotlin/plus/rua/project/AboutActivity.kt | 0 .../plus/rua/project/LicensesActivity.kt | 0 .../kotlin/plus/rua/project/MainActivity.kt | 0 .../src/main/res/anim/slide_in_left.xml | 0 .../src/main/res/anim/slide_in_right.xml | 0 .../src/main/res/anim/slide_out_left.xml | 0 .../src/main/res/anim/slide_out_right.xml | 0 .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin .../res/mipmap-hdpi/ic_launcher_round.png | Bin .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin .../res/mipmap-mdpi/ic_launcher_round.png | Bin .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin .../res/mipmap-xhdpi/ic_launcher_round.png | Bin .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin .../res/mipmap-xxhdpi/ic_launcher_round.png | Bin .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin .../res/mipmap-xxxhdpi/ic_launcher_round.png | Bin .../src/main/res/values-night/themes.xml | 0 .../src/main/res/values/strings.xml | 0 .../src/main/res/values/themes.xml | 0 {shared => core}/AGENTS.md | 0 {shared => core}/build.gradle.kts | 2 +- {shared => core}/src/main/AGENTS.md | 0 {shared => core}/src/main/assets/app_icon.png | Bin .../src/main/assets/app_icon.webp | Bin {shared => core}/src/main/assets/gifs/001.gif | Bin {shared => core}/src/main/assets/gifs/002.gif | Bin {shared => core}/src/main/assets/gifs/003.gif | Bin {shared => core}/src/main/assets/gifs/004.gif | Bin {shared => core}/src/main/assets/gifs/005.gif | Bin {shared => core}/src/main/assets/gifs/006.gif | Bin {shared => core}/src/main/assets/gifs/007.gif | Bin {shared => core}/src/main/assets/gifs/008.gif | Bin {shared => core}/src/main/assets/gifs/009.gif | Bin {shared => core}/src/main/assets/gifs/010.gif | Bin {shared => core}/src/main/assets/gifs/011.gif | Bin {shared => core}/src/main/assets/gifs/012.gif | Bin {shared => core}/src/main/assets/gifs/013.gif | Bin {shared => core}/src/main/assets/gifs/014.gif | Bin {shared => core}/src/main/assets/gifs/015.gif | Bin {shared => core}/src/main/assets/gifs/016.gif | Bin {shared => core}/src/main/assets/gifs/017.gif | Bin {shared => core}/src/main/assets/gifs/018.gif | Bin {shared => core}/src/main/assets/gifs/019.gif | Bin {shared => core}/src/main/assets/gifs/020.gif | Bin {shared => core}/src/main/assets/gifs/021.gif | Bin {shared => core}/src/main/assets/gifs/022.gif | Bin {shared => core}/src/main/assets/gifs/023.gif | Bin {shared => core}/src/main/assets/gifs/024.gif | Bin {shared => core}/src/main/assets/gifs/025.gif | Bin {shared => core}/src/main/assets/gifs/026.gif | Bin {shared => core}/src/main/assets/gifs/027.gif | Bin {shared => core}/src/main/assets/gifs/028.gif | Bin {shared => core}/src/main/assets/gifs/029.gif | Bin {shared => core}/src/main/assets/gifs/030.gif | Bin {shared => core}/src/main/assets/gifs/031.gif | Bin {shared => core}/src/main/assets/gifs/032.gif | Bin {shared => core}/src/main/assets/gifs/033.gif | Bin {shared => core}/src/main/assets/gifs/034.gif | Bin {shared => core}/src/main/assets/gifs/035.gif | Bin {shared => core}/src/main/assets/gifs/036.gif | Bin {shared => core}/src/main/assets/gifs/037.gif | Bin {shared => core}/src/main/assets/gifs/038.gif | Bin {shared => core}/src/main/assets/gifs/039.gif | Bin {shared => core}/src/main/assets/gifs/040.gif | Bin {shared => core}/src/main/assets/gifs/041.gif | Bin {shared => core}/src/main/assets/gifs/042.gif | Bin {shared => core}/src/main/assets/gifs/043.gif | Bin {shared => core}/src/main/assets/gifs/044.gif | Bin {shared => core}/src/main/assets/gifs/045.gif | Bin {shared => core}/src/main/assets/gifs/046.gif | Bin {shared => core}/src/main/assets/gifs/047.gif | Bin {shared => core}/src/main/assets/gifs/048.gif | Bin {shared => core}/src/main/assets/gifs/049.gif | Bin {shared => core}/src/main/assets/gifs/050.gif | Bin {shared => core}/src/main/assets/gifs/051.gif | Bin {shared => core}/src/main/assets/gifs/052.gif | Bin {shared => core}/src/main/assets/gifs/053.gif | Bin {shared => core}/src/main/assets/gifs/054.gif | Bin {shared => core}/src/main/assets/gifs/055.gif | Bin {shared => core}/src/main/assets/gifs/056.gif | Bin {shared => core}/src/main/assets/gifs/057.gif | Bin {shared => core}/src/main/assets/gifs/058.gif | Bin {shared => core}/src/main/assets/gifs/059.gif | Bin {shared => core}/src/main/assets/gifs/060.gif | Bin {shared => core}/src/main/assets/gifs/061.gif | Bin {shared => core}/src/main/assets/gifs/062.gif | Bin {shared => core}/src/main/assets/gifs/063.gif | Bin {shared => core}/src/main/assets/gifs/064.gif | Bin {shared => core}/src/main/assets/gifs/065.gif | Bin {shared => core}/src/main/assets/gifs/066.gif | Bin {shared => core}/src/main/assets/gifs/067.gif | Bin {shared => core}/src/main/assets/gifs/068.gif | Bin {shared => core}/src/main/assets/gifs/069.gif | Bin {shared => core}/src/main/assets/gifs/070.gif | Bin {shared => core}/src/main/assets/gifs/071.gif | Bin {shared => core}/src/main/assets/gifs/072.gif | Bin {shared => core}/src/main/assets/gifs/073.gif | Bin {shared => core}/src/main/assets/gifs/074.gif | Bin {shared => core}/src/main/assets/gifs/075.gif | Bin {shared => core}/src/main/assets/gifs/076.gif | Bin {shared => core}/src/main/assets/gifs/077.gif | Bin {shared => core}/src/main/assets/gifs/078.gif | Bin {shared => core}/src/main/assets/gifs/079.gif | Bin {shared => core}/src/main/assets/gifs/080.gif | Bin {shared => core}/src/main/assets/gifs/081.gif | Bin {shared => core}/src/main/assets/gifs/082.gif | Bin {shared => core}/src/main/assets/gifs/083.gif | Bin {shared => core}/src/main/assets/gifs/084.gif | Bin {shared => core}/src/main/assets/gifs/085.gif | Bin {shared => core}/src/main/assets/gifs/086.gif | Bin {shared => core}/src/main/assets/gifs/087.gif | Bin {shared => core}/src/main/assets/gifs/088.gif | Bin {shared => core}/src/main/assets/gifs/089.gif | Bin {shared => core}/src/main/assets/gifs/090.gif | Bin {shared => core}/src/main/assets/gifs/091.gif | Bin {shared => core}/src/main/assets/gifs/092.gif | Bin {shared => core}/src/main/assets/gifs/093.gif | Bin {shared => core}/src/main/assets/gifs/094.gif | Bin {shared => core}/src/main/assets/gifs/095.gif | Bin {shared => core}/src/main/assets/gifs/096.gif | Bin {shared => core}/src/main/assets/gifs/097.gif | Bin {shared => core}/src/main/assets/gifs/098.gif | Bin {shared => core}/src/main/assets/gifs/099.gif | Bin {shared => core}/src/main/assets/gifs/100.gif | Bin {shared => core}/src/main/assets/gifs/101.gif | Bin {shared => core}/src/main/assets/gifs/102.gif | Bin {shared => core}/src/main/assets/gifs/103.gif | Bin {shared => core}/src/main/assets/gifs/104.gif | Bin {shared => core}/src/main/assets/gifs/105.gif | Bin {shared => core}/src/main/assets/gifs/106.gif | Bin {shared => core}/src/main/assets/gifs/107.gif | Bin {shared => core}/src/main/assets/gifs/108.gif | Bin {shared => core}/src/main/assets/gifs/109.gif | Bin {shared => core}/src/main/assets/gifs/110.gif | Bin {shared => core}/src/main/assets/gifs/111.gif | Bin {shared => core}/src/main/assets/gifs/112.gif | Bin {shared => core}/src/main/assets/gifs/113.gif | Bin {shared => core}/src/main/assets/gifs/114.gif | Bin {shared => core}/src/main/assets/gifs/115.gif | Bin {shared => core}/src/main/assets/gifs/116.gif | Bin {shared => core}/src/main/assets/gifs/117.gif | Bin {shared => core}/src/main/assets/gifs/118.gif | Bin {shared => core}/src/main/assets/gifs/119.gif | Bin {shared => core}/src/main/assets/gifs/120.gif | Bin {shared => core}/src/main/assets/gifs/121.gif | Bin {shared => core}/src/main/assets/gifs/122.gif | Bin {shared => core}/src/main/assets/gifs/123.gif | Bin {shared => core}/src/main/assets/gifs/124.gif | Bin {shared => core}/src/main/assets/gifs/125.gif | Bin {shared => core}/src/main/assets/gifs/126.gif | Bin {shared => core}/src/main/assets/gifs/127.gif | Bin {shared => core}/src/main/assets/gifs/128.gif | Bin {shared => core}/src/main/assets/gifs/129.gif | Bin {shared => core}/src/main/assets/gifs/130.gif | Bin {shared => core}/src/main/assets/gifs/131.gif | Bin {shared => core}/src/main/assets/gifs/132.gif | Bin {shared => core}/src/main/assets/gifs/133.gif | Bin {shared => core}/src/main/assets/gifs/134.gif | Bin {shared => core}/src/main/assets/gifs/135.gif | Bin {shared => core}/src/main/assets/gifs/136.gif | Bin {shared => core}/src/main/assets/gifs/137.gif | Bin {shared => core}/src/main/assets/gifs/138.gif | Bin {shared => core}/src/main/assets/gifs/139.gif | Bin {shared => core}/src/main/assets/gifs/140.gif | Bin {shared => core}/src/main/assets/gifs/141.gif | Bin {shared => core}/src/main/assets/gifs/142.gif | Bin {shared => core}/src/main/assets/gifs/143.gif | Bin {shared => core}/src/main/assets/gifs/144.gif | Bin {shared => core}/src/main/assets/gifs/145.gif | Bin {shared => core}/src/main/assets/gifs/146.gif | Bin {shared => core}/src/main/assets/gifs/147.gif | Bin {shared => core}/src/main/assets/gifs/148.gif | Bin {shared => core}/src/main/assets/gifs/149.gif | Bin {shared => core}/src/main/assets/gifs/150.gif | Bin {shared => core}/src/main/assets/gifs/151.gif | Bin {shared => core}/src/main/assets/gifs/152.gif | Bin .../main/kotlin/plus/rua/project/AGENTS.md | 0 .../main/kotlin/plus/rua/project/AppInfo.kt | 0 .../plus/rua/project/CalendarViewModel.kt | 0 .../kotlin/plus/rua/project/ComposeTrace.kt | 0 .../main/kotlin/plus/rua/project/Platform.kt | 0 .../kotlin/plus/rua/project/ShiftPattern.kt | 0 .../main/kotlin/plus/rua/project/ui/AGENTS.md | 0 .../kotlin/plus/rua/project/ui/AboutScreen.kt | 0 .../kotlin/plus/rua/project/ui/AnimatedGif.kt | 0 .../kotlin/plus/rua/project/ui/BottomCard.kt | 0 .../plus/rua/project/ui/CalendarMonthPage.kt | 0 .../plus/rua/project/ui/CalendarMonthView.kt | 0 .../plus/rua/project/ui/CalendarPager.kt | 0 .../plus/rua/project/ui/CalendarUtils.kt | 0 .../kotlin/plus/rua/project/ui/DayCell.kt | 0 .../kotlin/plus/rua/project/ui/Licenses.kt | 0 .../plus/rua/project/ui/LicensesScreen.kt | 0 .../kotlin/plus/rua/project/ui/MonthHeader.kt | 0 .../kotlin/plus/rua/project/ui/WeekPager.kt | 0 .../plus/rua/project/ui/WeekdayHeader.kt | 0 .../plus/rua/project/ui/YearGridView.kt | 0 {shared => core}/src/test/AGENTS.md | 0 .../test/kotlin/plus/rua/project/AGENTS.md | 0 .../rua/project/CalendarViewModelStateTest.kt | 0 .../plus/rua/project/CalendarViewModelTest.kt | 0 .../plus/rua/project/ShiftPatternTest.kt | 0 .../test/kotlin/plus/rua/project/ui/AGENTS.md | 0 .../rua/project/ui/CalendarUtilsExtraTest.kt | 0 .../plus/rua/project/ui/CalendarUtilsTest.kt | 0 settings.gradle.kts | 4 +- shared/src/iosMain/AGENTS.md | 39 ---- .../iosMain/kotlin/plus/rua/project/AGENTS.md | 27 --- .../plus/rua/project/ComposeTrace.ios.kt | 5 - .../plus/rua/project/MainViewController.kt | 5 - .../kotlin/plus/rua/project/Platform.ios.kt | 35 --- .../src/main/kotlin/plus/rua/project/App.kt | 214 ------------------ 372 files changed, 4 insertions(+), 329 deletions(-) rename {androidApp => app}/AGENTS.md (100%) rename {androidApp => app}/build.gradle.kts (98%) rename {androidApp => app}/proguard-rules.pro (100%) rename {androidApp => app}/src/main/AGENTS.md (100%) rename {androidApp => app}/src/main/AndroidManifest.xml (100%) rename {androidApp => app}/src/main/assets/app_icon.png (100%) rename {androidApp => app}/src/main/assets/gifs/001.gif (100%) rename {androidApp => app}/src/main/assets/gifs/002.gif (100%) rename {androidApp => app}/src/main/assets/gifs/003.gif (100%) rename {androidApp => app}/src/main/assets/gifs/004.gif (100%) rename {androidApp => app}/src/main/assets/gifs/005.gif (100%) rename {androidApp => app}/src/main/assets/gifs/006.gif (100%) rename {androidApp => app}/src/main/assets/gifs/007.gif (100%) rename {androidApp => app}/src/main/assets/gifs/008.gif (100%) rename {androidApp => app}/src/main/assets/gifs/009.gif (100%) rename {androidApp => app}/src/main/assets/gifs/010.gif (100%) rename {androidApp => app}/src/main/assets/gifs/011.gif (100%) rename {androidApp => app}/src/main/assets/gifs/012.gif (100%) rename {androidApp => app}/src/main/assets/gifs/013.gif (100%) rename {androidApp => app}/src/main/assets/gifs/014.gif (100%) rename {androidApp => app}/src/main/assets/gifs/015.gif (100%) rename {androidApp => app}/src/main/assets/gifs/016.gif (100%) rename {androidApp => app}/src/main/assets/gifs/017.gif (100%) rename {androidApp => app}/src/main/assets/gifs/018.gif (100%) rename {androidApp => app}/src/main/assets/gifs/019.gif (100%) rename {androidApp => app}/src/main/assets/gifs/020.gif (100%) rename {androidApp => app}/src/main/assets/gifs/021.gif (100%) rename {androidApp => app}/src/main/assets/gifs/022.gif (100%) rename {androidApp => app}/src/main/assets/gifs/023.gif (100%) rename {androidApp => app}/src/main/assets/gifs/024.gif (100%) rename {androidApp => app}/src/main/assets/gifs/025.gif (100%) rename {androidApp => app}/src/main/assets/gifs/026.gif (100%) rename {androidApp => app}/src/main/assets/gifs/027.gif (100%) rename {androidApp => app}/src/main/assets/gifs/028.gif (100%) rename {androidApp => app}/src/main/assets/gifs/029.gif (100%) rename {androidApp => app}/src/main/assets/gifs/030.gif (100%) rename {androidApp => app}/src/main/assets/gifs/031.gif (100%) rename {androidApp => app}/src/main/assets/gifs/032.gif (100%) rename {androidApp => app}/src/main/assets/gifs/033.gif (100%) rename {androidApp => app}/src/main/assets/gifs/034.gif (100%) rename {androidApp => app}/src/main/assets/gifs/035.gif (100%) rename {androidApp => app}/src/main/assets/gifs/036.gif (100%) rename {androidApp => app}/src/main/assets/gifs/037.gif (100%) rename {androidApp => app}/src/main/assets/gifs/038.gif (100%) rename {androidApp => app}/src/main/assets/gifs/039.gif (100%) rename {androidApp => app}/src/main/assets/gifs/040.gif (100%) rename {androidApp => app}/src/main/assets/gifs/041.gif (100%) rename {androidApp => app}/src/main/assets/gifs/042.gif (100%) rename {androidApp => app}/src/main/assets/gifs/043.gif (100%) rename {androidApp => app}/src/main/assets/gifs/044.gif (100%) rename {androidApp => app}/src/main/assets/gifs/045.gif (100%) rename {androidApp => app}/src/main/assets/gifs/046.gif (100%) rename {androidApp => app}/src/main/assets/gifs/047.gif (100%) rename {androidApp => app}/src/main/assets/gifs/048.gif (100%) rename {androidApp => app}/src/main/assets/gifs/049.gif (100%) rename {androidApp => app}/src/main/assets/gifs/050.gif (100%) rename {androidApp => app}/src/main/assets/gifs/051.gif (100%) rename {androidApp => app}/src/main/assets/gifs/052.gif (100%) rename {androidApp => app}/src/main/assets/gifs/053.gif (100%) rename {androidApp => app}/src/main/assets/gifs/054.gif (100%) rename {androidApp => app}/src/main/assets/gifs/055.gif (100%) rename {androidApp => app}/src/main/assets/gifs/056.gif (100%) rename {androidApp => app}/src/main/assets/gifs/057.gif (100%) rename {androidApp => app}/src/main/assets/gifs/058.gif (100%) rename {androidApp => app}/src/main/assets/gifs/059.gif (100%) rename {androidApp => app}/src/main/assets/gifs/060.gif (100%) rename {androidApp => app}/src/main/assets/gifs/061.gif (100%) rename {androidApp => app}/src/main/assets/gifs/062.gif (100%) rename {androidApp => app}/src/main/assets/gifs/063.gif (100%) rename {androidApp => app}/src/main/assets/gifs/064.gif (100%) rename {androidApp => app}/src/main/assets/gifs/065.gif (100%) rename {androidApp => app}/src/main/assets/gifs/066.gif (100%) rename {androidApp => app}/src/main/assets/gifs/067.gif (100%) rename {androidApp => app}/src/main/assets/gifs/068.gif (100%) rename {androidApp => app}/src/main/assets/gifs/069.gif (100%) rename {androidApp => app}/src/main/assets/gifs/070.gif (100%) rename {androidApp => app}/src/main/assets/gifs/071.gif (100%) rename {androidApp => app}/src/main/assets/gifs/072.gif (100%) rename {androidApp => app}/src/main/assets/gifs/073.gif (100%) rename {androidApp => app}/src/main/assets/gifs/074.gif (100%) rename {androidApp => app}/src/main/assets/gifs/075.gif (100%) rename {androidApp => app}/src/main/assets/gifs/076.gif (100%) rename {androidApp => app}/src/main/assets/gifs/077.gif (100%) rename {androidApp => app}/src/main/assets/gifs/078.gif (100%) rename {androidApp => app}/src/main/assets/gifs/079.gif (100%) rename {androidApp => app}/src/main/assets/gifs/080.gif (100%) rename {androidApp => app}/src/main/assets/gifs/081.gif (100%) rename {androidApp => app}/src/main/assets/gifs/082.gif (100%) rename {androidApp => app}/src/main/assets/gifs/083.gif (100%) rename {androidApp => app}/src/main/assets/gifs/084.gif (100%) rename {androidApp => app}/src/main/assets/gifs/085.gif (100%) rename {androidApp => app}/src/main/assets/gifs/086.gif (100%) rename {androidApp => app}/src/main/assets/gifs/087.gif (100%) rename {androidApp => app}/src/main/assets/gifs/088.gif (100%) rename {androidApp => app}/src/main/assets/gifs/089.gif (100%) rename {androidApp => app}/src/main/assets/gifs/090.gif (100%) rename {androidApp => app}/src/main/assets/gifs/091.gif (100%) rename {androidApp => app}/src/main/assets/gifs/092.gif (100%) rename {androidApp => app}/src/main/assets/gifs/093.gif (100%) rename {androidApp => app}/src/main/assets/gifs/094.gif (100%) rename {androidApp => app}/src/main/assets/gifs/095.gif (100%) rename {androidApp => app}/src/main/assets/gifs/096.gif (100%) rename {androidApp => app}/src/main/assets/gifs/097.gif (100%) rename {androidApp => app}/src/main/assets/gifs/098.gif (100%) rename {androidApp => app}/src/main/assets/gifs/099.gif (100%) rename {androidApp => app}/src/main/assets/gifs/100.gif (100%) rename {androidApp => app}/src/main/assets/gifs/101.gif (100%) rename {androidApp => app}/src/main/assets/gifs/102.gif (100%) rename {androidApp => app}/src/main/assets/gifs/103.gif (100%) rename {androidApp => app}/src/main/assets/gifs/104.gif (100%) rename {androidApp => app}/src/main/assets/gifs/105.gif (100%) rename {androidApp => app}/src/main/assets/gifs/106.gif (100%) rename {androidApp => app}/src/main/assets/gifs/107.gif (100%) rename {androidApp => app}/src/main/assets/gifs/108.gif (100%) rename {androidApp => app}/src/main/assets/gifs/109.gif (100%) rename {androidApp => app}/src/main/assets/gifs/110.gif (100%) rename {androidApp => app}/src/main/assets/gifs/111.gif (100%) rename {androidApp => app}/src/main/assets/gifs/112.gif (100%) rename {androidApp => app}/src/main/assets/gifs/113.gif (100%) rename {androidApp => app}/src/main/assets/gifs/114.gif (100%) rename {androidApp => app}/src/main/assets/gifs/115.gif (100%) rename {androidApp => app}/src/main/assets/gifs/116.gif (100%) rename {androidApp => app}/src/main/assets/gifs/117.gif (100%) rename {androidApp => app}/src/main/assets/gifs/118.gif (100%) rename {androidApp => app}/src/main/assets/gifs/119.gif (100%) rename {androidApp => app}/src/main/assets/gifs/120.gif (100%) rename {androidApp => app}/src/main/assets/gifs/121.gif (100%) rename {androidApp => app}/src/main/assets/gifs/122.gif (100%) rename {androidApp => app}/src/main/assets/gifs/123.gif (100%) rename {androidApp => app}/src/main/assets/gifs/124.gif (100%) rename {androidApp => app}/src/main/assets/gifs/125.gif (100%) rename {androidApp => app}/src/main/assets/gifs/126.gif (100%) rename {androidApp => app}/src/main/assets/gifs/127.gif (100%) rename {androidApp => app}/src/main/assets/gifs/128.gif (100%) rename {androidApp => app}/src/main/assets/gifs/129.gif (100%) rename {androidApp => app}/src/main/assets/gifs/130.gif (100%) rename {androidApp => app}/src/main/assets/gifs/131.gif (100%) rename {androidApp => app}/src/main/assets/gifs/132.gif (100%) rename {androidApp => app}/src/main/assets/gifs/133.gif (100%) rename {androidApp => app}/src/main/assets/gifs/134.gif (100%) rename {androidApp => app}/src/main/assets/gifs/135.gif (100%) rename {androidApp => app}/src/main/assets/gifs/136.gif (100%) rename {androidApp => app}/src/main/assets/gifs/137.gif (100%) rename {androidApp => app}/src/main/assets/gifs/138.gif (100%) rename {androidApp => app}/src/main/assets/gifs/139.gif (100%) rename {androidApp => app}/src/main/assets/gifs/140.gif (100%) rename {androidApp => app}/src/main/assets/gifs/141.gif (100%) rename {androidApp => app}/src/main/assets/gifs/142.gif (100%) rename {androidApp => app}/src/main/assets/gifs/143.gif (100%) rename {androidApp => app}/src/main/assets/gifs/144.gif (100%) rename {androidApp => app}/src/main/assets/gifs/145.gif (100%) rename {androidApp => app}/src/main/assets/gifs/146.gif (100%) rename {androidApp => app}/src/main/assets/gifs/147.gif (100%) rename {androidApp => app}/src/main/assets/gifs/148.gif (100%) rename {androidApp => app}/src/main/assets/gifs/149.gif (100%) rename {androidApp => app}/src/main/assets/gifs/150.gif (100%) rename {androidApp => app}/src/main/assets/gifs/151.gif (100%) rename {androidApp => app}/src/main/assets/gifs/152.gif (100%) rename {androidApp => app}/src/main/kotlin/plus/rua/project/AGENTS.md (100%) rename {androidApp => app}/src/main/kotlin/plus/rua/project/AboutActivity.kt (100%) rename {androidApp => app}/src/main/kotlin/plus/rua/project/LicensesActivity.kt (100%) rename {androidApp => app}/src/main/kotlin/plus/rua/project/MainActivity.kt (100%) rename {androidApp => app}/src/main/res/anim/slide_in_left.xml (100%) rename {androidApp => app}/src/main/res/anim/slide_in_right.xml (100%) rename {androidApp => app}/src/main/res/anim/slide_out_left.xml (100%) rename {androidApp => app}/src/main/res/anim/slide_out_right.xml (100%) rename {androidApp => app}/src/main/res/mipmap-hdpi/ic_launcher.png (100%) rename {androidApp => app}/src/main/res/mipmap-hdpi/ic_launcher_round.png (100%) rename {androidApp => app}/src/main/res/mipmap-mdpi/ic_launcher.png (100%) rename {androidApp => app}/src/main/res/mipmap-mdpi/ic_launcher_round.png (100%) rename {androidApp => app}/src/main/res/mipmap-xhdpi/ic_launcher.png (100%) rename {androidApp => app}/src/main/res/mipmap-xhdpi/ic_launcher_round.png (100%) rename {androidApp => app}/src/main/res/mipmap-xxhdpi/ic_launcher.png (100%) rename {androidApp => app}/src/main/res/mipmap-xxhdpi/ic_launcher_round.png (100%) rename {androidApp => app}/src/main/res/mipmap-xxxhdpi/ic_launcher.png (100%) rename {androidApp => app}/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png (100%) rename {androidApp => app}/src/main/res/values-night/themes.xml (100%) rename {androidApp => app}/src/main/res/values/strings.xml (100%) rename {androidApp => app}/src/main/res/values/themes.xml (100%) rename {shared => core}/AGENTS.md (100%) rename {shared => core}/build.gradle.kts (94%) rename {shared => core}/src/main/AGENTS.md (100%) rename {shared => core}/src/main/assets/app_icon.png (100%) rename {shared => core}/src/main/assets/app_icon.webp (100%) rename {shared => core}/src/main/assets/gifs/001.gif (100%) rename {shared => core}/src/main/assets/gifs/002.gif (100%) rename {shared => core}/src/main/assets/gifs/003.gif (100%) rename {shared => core}/src/main/assets/gifs/004.gif (100%) rename {shared => core}/src/main/assets/gifs/005.gif (100%) rename {shared => core}/src/main/assets/gifs/006.gif (100%) rename {shared => core}/src/main/assets/gifs/007.gif (100%) rename {shared => core}/src/main/assets/gifs/008.gif (100%) rename {shared => core}/src/main/assets/gifs/009.gif (100%) rename {shared => core}/src/main/assets/gifs/010.gif (100%) rename {shared => core}/src/main/assets/gifs/011.gif (100%) rename {shared => core}/src/main/assets/gifs/012.gif (100%) rename {shared => core}/src/main/assets/gifs/013.gif (100%) rename {shared => core}/src/main/assets/gifs/014.gif (100%) rename {shared => core}/src/main/assets/gifs/015.gif (100%) rename {shared => core}/src/main/assets/gifs/016.gif (100%) rename {shared => core}/src/main/assets/gifs/017.gif (100%) rename {shared => core}/src/main/assets/gifs/018.gif (100%) rename {shared => core}/src/main/assets/gifs/019.gif (100%) rename {shared => core}/src/main/assets/gifs/020.gif (100%) rename {shared => core}/src/main/assets/gifs/021.gif (100%) rename {shared => core}/src/main/assets/gifs/022.gif (100%) rename {shared => core}/src/main/assets/gifs/023.gif (100%) rename {shared => core}/src/main/assets/gifs/024.gif (100%) rename {shared => core}/src/main/assets/gifs/025.gif (100%) rename {shared => core}/src/main/assets/gifs/026.gif (100%) rename {shared => core}/src/main/assets/gifs/027.gif (100%) rename {shared => core}/src/main/assets/gifs/028.gif (100%) rename {shared => core}/src/main/assets/gifs/029.gif (100%) rename {shared => core}/src/main/assets/gifs/030.gif (100%) rename {shared => core}/src/main/assets/gifs/031.gif (100%) rename {shared => core}/src/main/assets/gifs/032.gif (100%) rename {shared => core}/src/main/assets/gifs/033.gif (100%) rename {shared => core}/src/main/assets/gifs/034.gif (100%) rename {shared => core}/src/main/assets/gifs/035.gif (100%) rename {shared => core}/src/main/assets/gifs/036.gif (100%) rename {shared => core}/src/main/assets/gifs/037.gif (100%) rename {shared => core}/src/main/assets/gifs/038.gif (100%) rename {shared => core}/src/main/assets/gifs/039.gif (100%) rename {shared => core}/src/main/assets/gifs/040.gif (100%) rename {shared => core}/src/main/assets/gifs/041.gif (100%) rename {shared => core}/src/main/assets/gifs/042.gif (100%) rename {shared => core}/src/main/assets/gifs/043.gif (100%) rename {shared => core}/src/main/assets/gifs/044.gif (100%) rename {shared => core}/src/main/assets/gifs/045.gif (100%) rename {shared => core}/src/main/assets/gifs/046.gif (100%) rename {shared => core}/src/main/assets/gifs/047.gif (100%) rename {shared => core}/src/main/assets/gifs/048.gif (100%) rename {shared => core}/src/main/assets/gifs/049.gif (100%) rename {shared => core}/src/main/assets/gifs/050.gif (100%) rename {shared => core}/src/main/assets/gifs/051.gif (100%) rename {shared => core}/src/main/assets/gifs/052.gif (100%) rename {shared => core}/src/main/assets/gifs/053.gif (100%) rename {shared => core}/src/main/assets/gifs/054.gif (100%) rename {shared => core}/src/main/assets/gifs/055.gif (100%) rename {shared => core}/src/main/assets/gifs/056.gif (100%) rename {shared => core}/src/main/assets/gifs/057.gif (100%) rename {shared => core}/src/main/assets/gifs/058.gif (100%) rename {shared => core}/src/main/assets/gifs/059.gif (100%) rename {shared => core}/src/main/assets/gifs/060.gif (100%) rename {shared => core}/src/main/assets/gifs/061.gif (100%) rename {shared => core}/src/main/assets/gifs/062.gif (100%) rename {shared => core}/src/main/assets/gifs/063.gif (100%) rename {shared => core}/src/main/assets/gifs/064.gif (100%) rename {shared => core}/src/main/assets/gifs/065.gif (100%) rename {shared => core}/src/main/assets/gifs/066.gif (100%) rename {shared => core}/src/main/assets/gifs/067.gif (100%) rename {shared => core}/src/main/assets/gifs/068.gif (100%) rename {shared => core}/src/main/assets/gifs/069.gif (100%) rename {shared => core}/src/main/assets/gifs/070.gif (100%) rename {shared => core}/src/main/assets/gifs/071.gif (100%) rename {shared => core}/src/main/assets/gifs/072.gif (100%) rename {shared => core}/src/main/assets/gifs/073.gif (100%) rename {shared => core}/src/main/assets/gifs/074.gif (100%) rename {shared => core}/src/main/assets/gifs/075.gif (100%) rename {shared => core}/src/main/assets/gifs/076.gif (100%) rename {shared => core}/src/main/assets/gifs/077.gif (100%) rename {shared => core}/src/main/assets/gifs/078.gif (100%) rename {shared => core}/src/main/assets/gifs/079.gif (100%) rename {shared => core}/src/main/assets/gifs/080.gif (100%) rename {shared => core}/src/main/assets/gifs/081.gif (100%) rename {shared => core}/src/main/assets/gifs/082.gif (100%) rename {shared => core}/src/main/assets/gifs/083.gif (100%) rename {shared => core}/src/main/assets/gifs/084.gif (100%) rename {shared => core}/src/main/assets/gifs/085.gif (100%) rename {shared => core}/src/main/assets/gifs/086.gif (100%) rename {shared => core}/src/main/assets/gifs/087.gif (100%) rename {shared => core}/src/main/assets/gifs/088.gif (100%) rename {shared => core}/src/main/assets/gifs/089.gif (100%) rename {shared => core}/src/main/assets/gifs/090.gif (100%) rename {shared => core}/src/main/assets/gifs/091.gif (100%) rename {shared => core}/src/main/assets/gifs/092.gif (100%) rename {shared => core}/src/main/assets/gifs/093.gif (100%) rename {shared => core}/src/main/assets/gifs/094.gif (100%) rename {shared => core}/src/main/assets/gifs/095.gif (100%) rename {shared => core}/src/main/assets/gifs/096.gif (100%) rename {shared => core}/src/main/assets/gifs/097.gif (100%) rename {shared => core}/src/main/assets/gifs/098.gif (100%) rename {shared => core}/src/main/assets/gifs/099.gif (100%) rename {shared => core}/src/main/assets/gifs/100.gif (100%) rename {shared => core}/src/main/assets/gifs/101.gif (100%) rename {shared => core}/src/main/assets/gifs/102.gif (100%) rename {shared => core}/src/main/assets/gifs/103.gif (100%) rename {shared => core}/src/main/assets/gifs/104.gif (100%) rename {shared => core}/src/main/assets/gifs/105.gif (100%) rename {shared => core}/src/main/assets/gifs/106.gif (100%) rename {shared => core}/src/main/assets/gifs/107.gif (100%) rename {shared => core}/src/main/assets/gifs/108.gif (100%) rename {shared => core}/src/main/assets/gifs/109.gif (100%) rename {shared => core}/src/main/assets/gifs/110.gif (100%) rename {shared => core}/src/main/assets/gifs/111.gif (100%) rename {shared => core}/src/main/assets/gifs/112.gif (100%) rename {shared => core}/src/main/assets/gifs/113.gif (100%) rename {shared => core}/src/main/assets/gifs/114.gif (100%) rename {shared => core}/src/main/assets/gifs/115.gif (100%) rename {shared => core}/src/main/assets/gifs/116.gif (100%) rename {shared => core}/src/main/assets/gifs/117.gif (100%) rename {shared => core}/src/main/assets/gifs/118.gif (100%) rename {shared => core}/src/main/assets/gifs/119.gif (100%) rename {shared => core}/src/main/assets/gifs/120.gif (100%) rename {shared => core}/src/main/assets/gifs/121.gif (100%) rename {shared => core}/src/main/assets/gifs/122.gif (100%) rename {shared => core}/src/main/assets/gifs/123.gif (100%) rename {shared => core}/src/main/assets/gifs/124.gif (100%) rename {shared => core}/src/main/assets/gifs/125.gif (100%) rename {shared => core}/src/main/assets/gifs/126.gif (100%) rename {shared => core}/src/main/assets/gifs/127.gif (100%) rename {shared => core}/src/main/assets/gifs/128.gif (100%) rename {shared => core}/src/main/assets/gifs/129.gif (100%) rename {shared => core}/src/main/assets/gifs/130.gif (100%) rename {shared => core}/src/main/assets/gifs/131.gif (100%) rename {shared => core}/src/main/assets/gifs/132.gif (100%) rename {shared => core}/src/main/assets/gifs/133.gif (100%) rename {shared => core}/src/main/assets/gifs/134.gif (100%) rename {shared => core}/src/main/assets/gifs/135.gif (100%) rename {shared => core}/src/main/assets/gifs/136.gif (100%) rename {shared => core}/src/main/assets/gifs/137.gif (100%) rename {shared => core}/src/main/assets/gifs/138.gif (100%) rename {shared => core}/src/main/assets/gifs/139.gif (100%) rename {shared => core}/src/main/assets/gifs/140.gif (100%) rename {shared => core}/src/main/assets/gifs/141.gif (100%) rename {shared => core}/src/main/assets/gifs/142.gif (100%) rename {shared => core}/src/main/assets/gifs/143.gif (100%) rename {shared => core}/src/main/assets/gifs/144.gif (100%) rename {shared => core}/src/main/assets/gifs/145.gif (100%) rename {shared => core}/src/main/assets/gifs/146.gif (100%) rename {shared => core}/src/main/assets/gifs/147.gif (100%) rename {shared => core}/src/main/assets/gifs/148.gif (100%) rename {shared => core}/src/main/assets/gifs/149.gif (100%) rename {shared => core}/src/main/assets/gifs/150.gif (100%) rename {shared => core}/src/main/assets/gifs/151.gif (100%) rename {shared => core}/src/main/assets/gifs/152.gif (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/AGENTS.md (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/AppInfo.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/CalendarViewModel.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ComposeTrace.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/Platform.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ShiftPattern.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/AGENTS.md (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/AboutScreen.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/AnimatedGif.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/BottomCard.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/CalendarMonthPage.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/CalendarMonthView.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/CalendarPager.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/CalendarUtils.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/DayCell.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/Licenses.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/LicensesScreen.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/MonthHeader.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/WeekPager.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/WeekdayHeader.kt (100%) rename {shared => core}/src/main/kotlin/plus/rua/project/ui/YearGridView.kt (100%) rename {shared => core}/src/test/AGENTS.md (100%) rename {shared => core}/src/test/kotlin/plus/rua/project/AGENTS.md (100%) rename {shared => core}/src/test/kotlin/plus/rua/project/CalendarViewModelStateTest.kt (100%) rename {shared => core}/src/test/kotlin/plus/rua/project/CalendarViewModelTest.kt (100%) rename {shared => core}/src/test/kotlin/plus/rua/project/ShiftPatternTest.kt (100%) rename {shared => core}/src/test/kotlin/plus/rua/project/ui/AGENTS.md (100%) rename {shared => core}/src/test/kotlin/plus/rua/project/ui/CalendarUtilsExtraTest.kt (100%) rename {shared => core}/src/test/kotlin/plus/rua/project/ui/CalendarUtilsTest.kt (100%) delete mode 100644 shared/src/iosMain/AGENTS.md delete mode 100644 shared/src/iosMain/kotlin/plus/rua/project/AGENTS.md delete mode 100644 shared/src/iosMain/kotlin/plus/rua/project/ComposeTrace.ios.kt delete mode 100644 shared/src/iosMain/kotlin/plus/rua/project/MainViewController.kt delete mode 100644 shared/src/iosMain/kotlin/plus/rua/project/Platform.ios.kt delete mode 100644 shared/src/main/kotlin/plus/rua/project/App.kt diff --git a/androidApp/AGENTS.md b/app/AGENTS.md similarity index 100% rename from androidApp/AGENTS.md rename to app/AGENTS.md diff --git a/androidApp/build.gradle.kts b/app/build.gradle.kts similarity index 98% rename from androidApp/build.gradle.kts rename to app/build.gradle.kts index 823acaa..170562f 100644 --- a/androidApp/build.gradle.kts +++ b/app/build.gradle.kts @@ -82,7 +82,7 @@ android { } dependencies { - implementation(project(":shared")) + implementation(project(":core")) implementation(platform(libs.compose.bom)) implementation(libs.androidx.activity.compose) diff --git a/androidApp/proguard-rules.pro b/app/proguard-rules.pro similarity index 100% rename from androidApp/proguard-rules.pro rename to app/proguard-rules.pro diff --git a/androidApp/src/main/AGENTS.md b/app/src/main/AGENTS.md similarity index 100% rename from androidApp/src/main/AGENTS.md rename to app/src/main/AGENTS.md diff --git a/androidApp/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml similarity index 100% rename from androidApp/src/main/AndroidManifest.xml rename to app/src/main/AndroidManifest.xml diff --git a/androidApp/src/main/assets/app_icon.png b/app/src/main/assets/app_icon.png similarity index 100% rename from androidApp/src/main/assets/app_icon.png rename to app/src/main/assets/app_icon.png diff --git a/androidApp/src/main/assets/gifs/001.gif b/app/src/main/assets/gifs/001.gif similarity index 100% rename from androidApp/src/main/assets/gifs/001.gif rename to app/src/main/assets/gifs/001.gif diff --git a/androidApp/src/main/assets/gifs/002.gif b/app/src/main/assets/gifs/002.gif similarity index 100% rename from androidApp/src/main/assets/gifs/002.gif rename to app/src/main/assets/gifs/002.gif diff --git a/androidApp/src/main/assets/gifs/003.gif b/app/src/main/assets/gifs/003.gif similarity index 100% rename from androidApp/src/main/assets/gifs/003.gif rename to app/src/main/assets/gifs/003.gif diff --git a/androidApp/src/main/assets/gifs/004.gif b/app/src/main/assets/gifs/004.gif similarity index 100% rename from androidApp/src/main/assets/gifs/004.gif rename to app/src/main/assets/gifs/004.gif diff --git a/androidApp/src/main/assets/gifs/005.gif b/app/src/main/assets/gifs/005.gif similarity index 100% rename from androidApp/src/main/assets/gifs/005.gif rename to app/src/main/assets/gifs/005.gif diff --git a/androidApp/src/main/assets/gifs/006.gif b/app/src/main/assets/gifs/006.gif similarity index 100% rename from androidApp/src/main/assets/gifs/006.gif rename to app/src/main/assets/gifs/006.gif diff --git a/androidApp/src/main/assets/gifs/007.gif b/app/src/main/assets/gifs/007.gif similarity index 100% rename from androidApp/src/main/assets/gifs/007.gif rename to app/src/main/assets/gifs/007.gif diff --git a/androidApp/src/main/assets/gifs/008.gif b/app/src/main/assets/gifs/008.gif similarity index 100% rename from androidApp/src/main/assets/gifs/008.gif rename to app/src/main/assets/gifs/008.gif diff --git a/androidApp/src/main/assets/gifs/009.gif b/app/src/main/assets/gifs/009.gif similarity index 100% rename from androidApp/src/main/assets/gifs/009.gif rename to app/src/main/assets/gifs/009.gif diff --git a/androidApp/src/main/assets/gifs/010.gif b/app/src/main/assets/gifs/010.gif similarity index 100% rename from androidApp/src/main/assets/gifs/010.gif rename to app/src/main/assets/gifs/010.gif diff --git a/androidApp/src/main/assets/gifs/011.gif b/app/src/main/assets/gifs/011.gif similarity index 100% rename from androidApp/src/main/assets/gifs/011.gif rename to app/src/main/assets/gifs/011.gif diff --git a/androidApp/src/main/assets/gifs/012.gif b/app/src/main/assets/gifs/012.gif similarity index 100% rename from androidApp/src/main/assets/gifs/012.gif rename to app/src/main/assets/gifs/012.gif diff --git a/androidApp/src/main/assets/gifs/013.gif b/app/src/main/assets/gifs/013.gif similarity index 100% rename from androidApp/src/main/assets/gifs/013.gif rename to app/src/main/assets/gifs/013.gif diff --git a/androidApp/src/main/assets/gifs/014.gif b/app/src/main/assets/gifs/014.gif similarity index 100% rename from androidApp/src/main/assets/gifs/014.gif rename to app/src/main/assets/gifs/014.gif diff --git a/androidApp/src/main/assets/gifs/015.gif b/app/src/main/assets/gifs/015.gif similarity index 100% rename from androidApp/src/main/assets/gifs/015.gif rename to app/src/main/assets/gifs/015.gif diff --git a/androidApp/src/main/assets/gifs/016.gif b/app/src/main/assets/gifs/016.gif similarity index 100% rename from androidApp/src/main/assets/gifs/016.gif rename to app/src/main/assets/gifs/016.gif diff --git a/androidApp/src/main/assets/gifs/017.gif b/app/src/main/assets/gifs/017.gif similarity index 100% rename from androidApp/src/main/assets/gifs/017.gif rename to app/src/main/assets/gifs/017.gif diff --git a/androidApp/src/main/assets/gifs/018.gif b/app/src/main/assets/gifs/018.gif similarity index 100% rename from androidApp/src/main/assets/gifs/018.gif rename to app/src/main/assets/gifs/018.gif diff --git a/androidApp/src/main/assets/gifs/019.gif b/app/src/main/assets/gifs/019.gif similarity index 100% rename from androidApp/src/main/assets/gifs/019.gif rename to app/src/main/assets/gifs/019.gif diff --git a/androidApp/src/main/assets/gifs/020.gif b/app/src/main/assets/gifs/020.gif similarity index 100% rename from androidApp/src/main/assets/gifs/020.gif rename to app/src/main/assets/gifs/020.gif diff --git a/androidApp/src/main/assets/gifs/021.gif b/app/src/main/assets/gifs/021.gif similarity index 100% rename from androidApp/src/main/assets/gifs/021.gif rename to app/src/main/assets/gifs/021.gif diff --git a/androidApp/src/main/assets/gifs/022.gif b/app/src/main/assets/gifs/022.gif similarity index 100% rename from androidApp/src/main/assets/gifs/022.gif rename to app/src/main/assets/gifs/022.gif diff --git a/androidApp/src/main/assets/gifs/023.gif b/app/src/main/assets/gifs/023.gif similarity index 100% rename from androidApp/src/main/assets/gifs/023.gif rename to app/src/main/assets/gifs/023.gif diff --git a/androidApp/src/main/assets/gifs/024.gif b/app/src/main/assets/gifs/024.gif similarity index 100% rename from androidApp/src/main/assets/gifs/024.gif rename to app/src/main/assets/gifs/024.gif diff --git a/androidApp/src/main/assets/gifs/025.gif b/app/src/main/assets/gifs/025.gif similarity index 100% rename from androidApp/src/main/assets/gifs/025.gif rename to app/src/main/assets/gifs/025.gif diff --git a/androidApp/src/main/assets/gifs/026.gif b/app/src/main/assets/gifs/026.gif similarity index 100% rename from androidApp/src/main/assets/gifs/026.gif rename to app/src/main/assets/gifs/026.gif diff --git a/androidApp/src/main/assets/gifs/027.gif b/app/src/main/assets/gifs/027.gif similarity index 100% rename from androidApp/src/main/assets/gifs/027.gif rename to app/src/main/assets/gifs/027.gif diff --git a/androidApp/src/main/assets/gifs/028.gif b/app/src/main/assets/gifs/028.gif similarity index 100% rename from androidApp/src/main/assets/gifs/028.gif rename to app/src/main/assets/gifs/028.gif diff --git a/androidApp/src/main/assets/gifs/029.gif b/app/src/main/assets/gifs/029.gif similarity index 100% rename from androidApp/src/main/assets/gifs/029.gif rename to app/src/main/assets/gifs/029.gif diff --git a/androidApp/src/main/assets/gifs/030.gif b/app/src/main/assets/gifs/030.gif similarity index 100% rename from androidApp/src/main/assets/gifs/030.gif rename to app/src/main/assets/gifs/030.gif diff --git a/androidApp/src/main/assets/gifs/031.gif b/app/src/main/assets/gifs/031.gif similarity index 100% rename from androidApp/src/main/assets/gifs/031.gif rename to app/src/main/assets/gifs/031.gif diff --git a/androidApp/src/main/assets/gifs/032.gif b/app/src/main/assets/gifs/032.gif similarity index 100% rename from androidApp/src/main/assets/gifs/032.gif rename to app/src/main/assets/gifs/032.gif diff --git a/androidApp/src/main/assets/gifs/033.gif b/app/src/main/assets/gifs/033.gif similarity index 100% rename from androidApp/src/main/assets/gifs/033.gif rename to app/src/main/assets/gifs/033.gif diff --git a/androidApp/src/main/assets/gifs/034.gif b/app/src/main/assets/gifs/034.gif similarity index 100% rename from androidApp/src/main/assets/gifs/034.gif rename to app/src/main/assets/gifs/034.gif diff --git a/androidApp/src/main/assets/gifs/035.gif b/app/src/main/assets/gifs/035.gif similarity index 100% rename from androidApp/src/main/assets/gifs/035.gif rename to app/src/main/assets/gifs/035.gif diff --git a/androidApp/src/main/assets/gifs/036.gif b/app/src/main/assets/gifs/036.gif similarity index 100% rename from androidApp/src/main/assets/gifs/036.gif rename to app/src/main/assets/gifs/036.gif diff --git a/androidApp/src/main/assets/gifs/037.gif b/app/src/main/assets/gifs/037.gif similarity index 100% rename from androidApp/src/main/assets/gifs/037.gif rename to app/src/main/assets/gifs/037.gif diff --git a/androidApp/src/main/assets/gifs/038.gif b/app/src/main/assets/gifs/038.gif similarity index 100% rename from androidApp/src/main/assets/gifs/038.gif rename to app/src/main/assets/gifs/038.gif diff --git a/androidApp/src/main/assets/gifs/039.gif b/app/src/main/assets/gifs/039.gif similarity index 100% rename from androidApp/src/main/assets/gifs/039.gif rename to app/src/main/assets/gifs/039.gif diff --git a/androidApp/src/main/assets/gifs/040.gif b/app/src/main/assets/gifs/040.gif similarity index 100% rename from androidApp/src/main/assets/gifs/040.gif rename to app/src/main/assets/gifs/040.gif diff --git a/androidApp/src/main/assets/gifs/041.gif b/app/src/main/assets/gifs/041.gif similarity index 100% rename from androidApp/src/main/assets/gifs/041.gif rename to app/src/main/assets/gifs/041.gif diff --git a/androidApp/src/main/assets/gifs/042.gif b/app/src/main/assets/gifs/042.gif similarity index 100% rename from androidApp/src/main/assets/gifs/042.gif rename to app/src/main/assets/gifs/042.gif diff --git a/androidApp/src/main/assets/gifs/043.gif b/app/src/main/assets/gifs/043.gif similarity index 100% rename from androidApp/src/main/assets/gifs/043.gif rename to app/src/main/assets/gifs/043.gif diff --git a/androidApp/src/main/assets/gifs/044.gif b/app/src/main/assets/gifs/044.gif similarity index 100% rename from androidApp/src/main/assets/gifs/044.gif rename to app/src/main/assets/gifs/044.gif diff --git a/androidApp/src/main/assets/gifs/045.gif b/app/src/main/assets/gifs/045.gif similarity index 100% rename from androidApp/src/main/assets/gifs/045.gif rename to app/src/main/assets/gifs/045.gif diff --git a/androidApp/src/main/assets/gifs/046.gif b/app/src/main/assets/gifs/046.gif similarity index 100% rename from androidApp/src/main/assets/gifs/046.gif rename to app/src/main/assets/gifs/046.gif diff --git a/androidApp/src/main/assets/gifs/047.gif b/app/src/main/assets/gifs/047.gif similarity index 100% rename from androidApp/src/main/assets/gifs/047.gif rename to app/src/main/assets/gifs/047.gif diff --git a/androidApp/src/main/assets/gifs/048.gif b/app/src/main/assets/gifs/048.gif similarity index 100% rename from androidApp/src/main/assets/gifs/048.gif rename to app/src/main/assets/gifs/048.gif diff --git a/androidApp/src/main/assets/gifs/049.gif b/app/src/main/assets/gifs/049.gif similarity index 100% rename from androidApp/src/main/assets/gifs/049.gif rename to app/src/main/assets/gifs/049.gif diff --git a/androidApp/src/main/assets/gifs/050.gif b/app/src/main/assets/gifs/050.gif similarity index 100% rename from androidApp/src/main/assets/gifs/050.gif rename to app/src/main/assets/gifs/050.gif diff --git a/androidApp/src/main/assets/gifs/051.gif b/app/src/main/assets/gifs/051.gif similarity index 100% rename from androidApp/src/main/assets/gifs/051.gif rename to app/src/main/assets/gifs/051.gif diff --git a/androidApp/src/main/assets/gifs/052.gif b/app/src/main/assets/gifs/052.gif similarity index 100% rename from androidApp/src/main/assets/gifs/052.gif rename to app/src/main/assets/gifs/052.gif diff --git a/androidApp/src/main/assets/gifs/053.gif b/app/src/main/assets/gifs/053.gif similarity index 100% rename from androidApp/src/main/assets/gifs/053.gif rename to app/src/main/assets/gifs/053.gif diff --git a/androidApp/src/main/assets/gifs/054.gif b/app/src/main/assets/gifs/054.gif similarity index 100% rename from androidApp/src/main/assets/gifs/054.gif rename to app/src/main/assets/gifs/054.gif diff --git a/androidApp/src/main/assets/gifs/055.gif b/app/src/main/assets/gifs/055.gif similarity index 100% rename from androidApp/src/main/assets/gifs/055.gif rename to app/src/main/assets/gifs/055.gif diff --git a/androidApp/src/main/assets/gifs/056.gif b/app/src/main/assets/gifs/056.gif similarity index 100% rename from androidApp/src/main/assets/gifs/056.gif rename to app/src/main/assets/gifs/056.gif diff --git a/androidApp/src/main/assets/gifs/057.gif b/app/src/main/assets/gifs/057.gif similarity index 100% rename from androidApp/src/main/assets/gifs/057.gif rename to app/src/main/assets/gifs/057.gif diff --git a/androidApp/src/main/assets/gifs/058.gif b/app/src/main/assets/gifs/058.gif similarity index 100% rename from androidApp/src/main/assets/gifs/058.gif rename to app/src/main/assets/gifs/058.gif diff --git a/androidApp/src/main/assets/gifs/059.gif b/app/src/main/assets/gifs/059.gif similarity index 100% rename from androidApp/src/main/assets/gifs/059.gif rename to app/src/main/assets/gifs/059.gif diff --git a/androidApp/src/main/assets/gifs/060.gif b/app/src/main/assets/gifs/060.gif similarity index 100% rename from androidApp/src/main/assets/gifs/060.gif rename to app/src/main/assets/gifs/060.gif diff --git a/androidApp/src/main/assets/gifs/061.gif b/app/src/main/assets/gifs/061.gif similarity index 100% rename from androidApp/src/main/assets/gifs/061.gif rename to app/src/main/assets/gifs/061.gif diff --git a/androidApp/src/main/assets/gifs/062.gif b/app/src/main/assets/gifs/062.gif similarity index 100% rename from androidApp/src/main/assets/gifs/062.gif rename to app/src/main/assets/gifs/062.gif diff --git a/androidApp/src/main/assets/gifs/063.gif b/app/src/main/assets/gifs/063.gif similarity index 100% rename from androidApp/src/main/assets/gifs/063.gif rename to app/src/main/assets/gifs/063.gif diff --git a/androidApp/src/main/assets/gifs/064.gif b/app/src/main/assets/gifs/064.gif similarity index 100% rename from androidApp/src/main/assets/gifs/064.gif rename to app/src/main/assets/gifs/064.gif diff --git a/androidApp/src/main/assets/gifs/065.gif b/app/src/main/assets/gifs/065.gif similarity index 100% rename from androidApp/src/main/assets/gifs/065.gif rename to app/src/main/assets/gifs/065.gif diff --git a/androidApp/src/main/assets/gifs/066.gif b/app/src/main/assets/gifs/066.gif similarity index 100% rename from androidApp/src/main/assets/gifs/066.gif rename to app/src/main/assets/gifs/066.gif diff --git a/androidApp/src/main/assets/gifs/067.gif b/app/src/main/assets/gifs/067.gif similarity index 100% rename from androidApp/src/main/assets/gifs/067.gif rename to app/src/main/assets/gifs/067.gif diff --git a/androidApp/src/main/assets/gifs/068.gif b/app/src/main/assets/gifs/068.gif similarity index 100% rename from androidApp/src/main/assets/gifs/068.gif rename to app/src/main/assets/gifs/068.gif diff --git a/androidApp/src/main/assets/gifs/069.gif b/app/src/main/assets/gifs/069.gif similarity index 100% rename from androidApp/src/main/assets/gifs/069.gif rename to app/src/main/assets/gifs/069.gif diff --git a/androidApp/src/main/assets/gifs/070.gif b/app/src/main/assets/gifs/070.gif similarity index 100% rename from androidApp/src/main/assets/gifs/070.gif rename to app/src/main/assets/gifs/070.gif diff --git a/androidApp/src/main/assets/gifs/071.gif b/app/src/main/assets/gifs/071.gif similarity index 100% rename from androidApp/src/main/assets/gifs/071.gif rename to app/src/main/assets/gifs/071.gif diff --git a/androidApp/src/main/assets/gifs/072.gif b/app/src/main/assets/gifs/072.gif similarity index 100% rename from androidApp/src/main/assets/gifs/072.gif rename to app/src/main/assets/gifs/072.gif diff --git a/androidApp/src/main/assets/gifs/073.gif b/app/src/main/assets/gifs/073.gif similarity index 100% rename from androidApp/src/main/assets/gifs/073.gif rename to app/src/main/assets/gifs/073.gif diff --git a/androidApp/src/main/assets/gifs/074.gif b/app/src/main/assets/gifs/074.gif similarity index 100% rename from androidApp/src/main/assets/gifs/074.gif rename to app/src/main/assets/gifs/074.gif diff --git a/androidApp/src/main/assets/gifs/075.gif b/app/src/main/assets/gifs/075.gif similarity index 100% rename from androidApp/src/main/assets/gifs/075.gif rename to app/src/main/assets/gifs/075.gif diff --git a/androidApp/src/main/assets/gifs/076.gif b/app/src/main/assets/gifs/076.gif similarity index 100% rename from androidApp/src/main/assets/gifs/076.gif rename to app/src/main/assets/gifs/076.gif diff --git a/androidApp/src/main/assets/gifs/077.gif b/app/src/main/assets/gifs/077.gif similarity index 100% rename from androidApp/src/main/assets/gifs/077.gif rename to app/src/main/assets/gifs/077.gif diff --git a/androidApp/src/main/assets/gifs/078.gif b/app/src/main/assets/gifs/078.gif similarity index 100% rename from androidApp/src/main/assets/gifs/078.gif rename to app/src/main/assets/gifs/078.gif diff --git a/androidApp/src/main/assets/gifs/079.gif b/app/src/main/assets/gifs/079.gif similarity index 100% rename from androidApp/src/main/assets/gifs/079.gif rename to app/src/main/assets/gifs/079.gif diff --git a/androidApp/src/main/assets/gifs/080.gif b/app/src/main/assets/gifs/080.gif similarity index 100% rename from androidApp/src/main/assets/gifs/080.gif rename to app/src/main/assets/gifs/080.gif diff --git a/androidApp/src/main/assets/gifs/081.gif b/app/src/main/assets/gifs/081.gif similarity index 100% rename from androidApp/src/main/assets/gifs/081.gif rename to app/src/main/assets/gifs/081.gif diff --git a/androidApp/src/main/assets/gifs/082.gif b/app/src/main/assets/gifs/082.gif similarity index 100% rename from androidApp/src/main/assets/gifs/082.gif rename to app/src/main/assets/gifs/082.gif diff --git a/androidApp/src/main/assets/gifs/083.gif b/app/src/main/assets/gifs/083.gif similarity index 100% rename from androidApp/src/main/assets/gifs/083.gif rename to app/src/main/assets/gifs/083.gif diff --git a/androidApp/src/main/assets/gifs/084.gif b/app/src/main/assets/gifs/084.gif similarity index 100% rename from androidApp/src/main/assets/gifs/084.gif rename to app/src/main/assets/gifs/084.gif diff --git a/androidApp/src/main/assets/gifs/085.gif b/app/src/main/assets/gifs/085.gif similarity index 100% rename from androidApp/src/main/assets/gifs/085.gif rename to app/src/main/assets/gifs/085.gif diff --git a/androidApp/src/main/assets/gifs/086.gif b/app/src/main/assets/gifs/086.gif similarity index 100% rename from androidApp/src/main/assets/gifs/086.gif rename to app/src/main/assets/gifs/086.gif diff --git a/androidApp/src/main/assets/gifs/087.gif b/app/src/main/assets/gifs/087.gif similarity index 100% rename from androidApp/src/main/assets/gifs/087.gif rename to app/src/main/assets/gifs/087.gif diff --git a/androidApp/src/main/assets/gifs/088.gif b/app/src/main/assets/gifs/088.gif similarity index 100% rename from androidApp/src/main/assets/gifs/088.gif rename to app/src/main/assets/gifs/088.gif diff --git a/androidApp/src/main/assets/gifs/089.gif b/app/src/main/assets/gifs/089.gif similarity index 100% rename from androidApp/src/main/assets/gifs/089.gif rename to app/src/main/assets/gifs/089.gif diff --git a/androidApp/src/main/assets/gifs/090.gif b/app/src/main/assets/gifs/090.gif similarity index 100% rename from androidApp/src/main/assets/gifs/090.gif rename to app/src/main/assets/gifs/090.gif diff --git a/androidApp/src/main/assets/gifs/091.gif b/app/src/main/assets/gifs/091.gif similarity index 100% rename from androidApp/src/main/assets/gifs/091.gif rename to app/src/main/assets/gifs/091.gif diff --git a/androidApp/src/main/assets/gifs/092.gif b/app/src/main/assets/gifs/092.gif similarity index 100% rename from androidApp/src/main/assets/gifs/092.gif rename to app/src/main/assets/gifs/092.gif diff --git a/androidApp/src/main/assets/gifs/093.gif b/app/src/main/assets/gifs/093.gif similarity index 100% rename from androidApp/src/main/assets/gifs/093.gif rename to app/src/main/assets/gifs/093.gif diff --git a/androidApp/src/main/assets/gifs/094.gif b/app/src/main/assets/gifs/094.gif similarity index 100% rename from androidApp/src/main/assets/gifs/094.gif rename to app/src/main/assets/gifs/094.gif diff --git a/androidApp/src/main/assets/gifs/095.gif b/app/src/main/assets/gifs/095.gif similarity index 100% rename from androidApp/src/main/assets/gifs/095.gif rename to app/src/main/assets/gifs/095.gif diff --git a/androidApp/src/main/assets/gifs/096.gif b/app/src/main/assets/gifs/096.gif similarity index 100% rename from androidApp/src/main/assets/gifs/096.gif rename to app/src/main/assets/gifs/096.gif diff --git a/androidApp/src/main/assets/gifs/097.gif b/app/src/main/assets/gifs/097.gif similarity index 100% rename from androidApp/src/main/assets/gifs/097.gif rename to app/src/main/assets/gifs/097.gif diff --git a/androidApp/src/main/assets/gifs/098.gif b/app/src/main/assets/gifs/098.gif similarity index 100% rename from androidApp/src/main/assets/gifs/098.gif rename to app/src/main/assets/gifs/098.gif diff --git a/androidApp/src/main/assets/gifs/099.gif b/app/src/main/assets/gifs/099.gif similarity index 100% rename from androidApp/src/main/assets/gifs/099.gif rename to app/src/main/assets/gifs/099.gif diff --git a/androidApp/src/main/assets/gifs/100.gif b/app/src/main/assets/gifs/100.gif similarity index 100% rename from androidApp/src/main/assets/gifs/100.gif rename to app/src/main/assets/gifs/100.gif diff --git a/androidApp/src/main/assets/gifs/101.gif b/app/src/main/assets/gifs/101.gif similarity index 100% rename from androidApp/src/main/assets/gifs/101.gif rename to app/src/main/assets/gifs/101.gif diff --git a/androidApp/src/main/assets/gifs/102.gif b/app/src/main/assets/gifs/102.gif similarity index 100% rename from androidApp/src/main/assets/gifs/102.gif rename to app/src/main/assets/gifs/102.gif diff --git a/androidApp/src/main/assets/gifs/103.gif b/app/src/main/assets/gifs/103.gif similarity index 100% rename from androidApp/src/main/assets/gifs/103.gif rename to app/src/main/assets/gifs/103.gif diff --git a/androidApp/src/main/assets/gifs/104.gif b/app/src/main/assets/gifs/104.gif similarity index 100% rename from androidApp/src/main/assets/gifs/104.gif rename to app/src/main/assets/gifs/104.gif diff --git a/androidApp/src/main/assets/gifs/105.gif b/app/src/main/assets/gifs/105.gif similarity index 100% rename from androidApp/src/main/assets/gifs/105.gif rename to app/src/main/assets/gifs/105.gif diff --git a/androidApp/src/main/assets/gifs/106.gif b/app/src/main/assets/gifs/106.gif similarity index 100% rename from androidApp/src/main/assets/gifs/106.gif rename to app/src/main/assets/gifs/106.gif diff --git a/androidApp/src/main/assets/gifs/107.gif b/app/src/main/assets/gifs/107.gif similarity index 100% rename from androidApp/src/main/assets/gifs/107.gif rename to app/src/main/assets/gifs/107.gif diff --git a/androidApp/src/main/assets/gifs/108.gif b/app/src/main/assets/gifs/108.gif similarity index 100% rename from androidApp/src/main/assets/gifs/108.gif rename to app/src/main/assets/gifs/108.gif diff --git a/androidApp/src/main/assets/gifs/109.gif b/app/src/main/assets/gifs/109.gif similarity index 100% rename from androidApp/src/main/assets/gifs/109.gif rename to app/src/main/assets/gifs/109.gif diff --git a/androidApp/src/main/assets/gifs/110.gif b/app/src/main/assets/gifs/110.gif similarity index 100% rename from androidApp/src/main/assets/gifs/110.gif rename to app/src/main/assets/gifs/110.gif diff --git a/androidApp/src/main/assets/gifs/111.gif b/app/src/main/assets/gifs/111.gif similarity index 100% rename from androidApp/src/main/assets/gifs/111.gif rename to app/src/main/assets/gifs/111.gif diff --git a/androidApp/src/main/assets/gifs/112.gif b/app/src/main/assets/gifs/112.gif similarity index 100% rename from androidApp/src/main/assets/gifs/112.gif rename to app/src/main/assets/gifs/112.gif diff --git a/androidApp/src/main/assets/gifs/113.gif b/app/src/main/assets/gifs/113.gif similarity index 100% rename from androidApp/src/main/assets/gifs/113.gif rename to app/src/main/assets/gifs/113.gif diff --git a/androidApp/src/main/assets/gifs/114.gif b/app/src/main/assets/gifs/114.gif similarity index 100% rename from androidApp/src/main/assets/gifs/114.gif rename to app/src/main/assets/gifs/114.gif diff --git a/androidApp/src/main/assets/gifs/115.gif b/app/src/main/assets/gifs/115.gif similarity index 100% rename from androidApp/src/main/assets/gifs/115.gif rename to app/src/main/assets/gifs/115.gif diff --git a/androidApp/src/main/assets/gifs/116.gif b/app/src/main/assets/gifs/116.gif similarity index 100% rename from androidApp/src/main/assets/gifs/116.gif rename to app/src/main/assets/gifs/116.gif diff --git a/androidApp/src/main/assets/gifs/117.gif b/app/src/main/assets/gifs/117.gif similarity index 100% rename from androidApp/src/main/assets/gifs/117.gif rename to app/src/main/assets/gifs/117.gif diff --git a/androidApp/src/main/assets/gifs/118.gif b/app/src/main/assets/gifs/118.gif similarity index 100% rename from androidApp/src/main/assets/gifs/118.gif rename to app/src/main/assets/gifs/118.gif diff --git a/androidApp/src/main/assets/gifs/119.gif b/app/src/main/assets/gifs/119.gif similarity index 100% rename from androidApp/src/main/assets/gifs/119.gif rename to app/src/main/assets/gifs/119.gif diff --git a/androidApp/src/main/assets/gifs/120.gif b/app/src/main/assets/gifs/120.gif similarity index 100% rename from androidApp/src/main/assets/gifs/120.gif rename to app/src/main/assets/gifs/120.gif diff --git a/androidApp/src/main/assets/gifs/121.gif b/app/src/main/assets/gifs/121.gif similarity index 100% rename from androidApp/src/main/assets/gifs/121.gif rename to app/src/main/assets/gifs/121.gif diff --git a/androidApp/src/main/assets/gifs/122.gif b/app/src/main/assets/gifs/122.gif similarity index 100% rename from androidApp/src/main/assets/gifs/122.gif rename to app/src/main/assets/gifs/122.gif diff --git a/androidApp/src/main/assets/gifs/123.gif b/app/src/main/assets/gifs/123.gif similarity index 100% rename from androidApp/src/main/assets/gifs/123.gif rename to app/src/main/assets/gifs/123.gif diff --git a/androidApp/src/main/assets/gifs/124.gif b/app/src/main/assets/gifs/124.gif similarity index 100% rename from androidApp/src/main/assets/gifs/124.gif rename to app/src/main/assets/gifs/124.gif diff --git a/androidApp/src/main/assets/gifs/125.gif b/app/src/main/assets/gifs/125.gif similarity index 100% rename from androidApp/src/main/assets/gifs/125.gif rename to app/src/main/assets/gifs/125.gif diff --git a/androidApp/src/main/assets/gifs/126.gif b/app/src/main/assets/gifs/126.gif similarity index 100% rename from androidApp/src/main/assets/gifs/126.gif rename to app/src/main/assets/gifs/126.gif diff --git a/androidApp/src/main/assets/gifs/127.gif b/app/src/main/assets/gifs/127.gif similarity index 100% rename from androidApp/src/main/assets/gifs/127.gif rename to app/src/main/assets/gifs/127.gif diff --git a/androidApp/src/main/assets/gifs/128.gif b/app/src/main/assets/gifs/128.gif similarity index 100% rename from androidApp/src/main/assets/gifs/128.gif rename to app/src/main/assets/gifs/128.gif diff --git a/androidApp/src/main/assets/gifs/129.gif b/app/src/main/assets/gifs/129.gif similarity index 100% rename from androidApp/src/main/assets/gifs/129.gif rename to app/src/main/assets/gifs/129.gif diff --git a/androidApp/src/main/assets/gifs/130.gif b/app/src/main/assets/gifs/130.gif similarity index 100% rename from androidApp/src/main/assets/gifs/130.gif rename to app/src/main/assets/gifs/130.gif diff --git a/androidApp/src/main/assets/gifs/131.gif b/app/src/main/assets/gifs/131.gif similarity index 100% rename from androidApp/src/main/assets/gifs/131.gif rename to app/src/main/assets/gifs/131.gif diff --git a/androidApp/src/main/assets/gifs/132.gif b/app/src/main/assets/gifs/132.gif similarity index 100% rename from androidApp/src/main/assets/gifs/132.gif rename to app/src/main/assets/gifs/132.gif diff --git a/androidApp/src/main/assets/gifs/133.gif b/app/src/main/assets/gifs/133.gif similarity index 100% rename from androidApp/src/main/assets/gifs/133.gif rename to app/src/main/assets/gifs/133.gif diff --git a/androidApp/src/main/assets/gifs/134.gif b/app/src/main/assets/gifs/134.gif similarity index 100% rename from androidApp/src/main/assets/gifs/134.gif rename to app/src/main/assets/gifs/134.gif diff --git a/androidApp/src/main/assets/gifs/135.gif b/app/src/main/assets/gifs/135.gif similarity index 100% rename from androidApp/src/main/assets/gifs/135.gif rename to app/src/main/assets/gifs/135.gif diff --git a/androidApp/src/main/assets/gifs/136.gif b/app/src/main/assets/gifs/136.gif similarity index 100% rename from androidApp/src/main/assets/gifs/136.gif rename to app/src/main/assets/gifs/136.gif diff --git a/androidApp/src/main/assets/gifs/137.gif b/app/src/main/assets/gifs/137.gif similarity index 100% rename from androidApp/src/main/assets/gifs/137.gif rename to app/src/main/assets/gifs/137.gif diff --git a/androidApp/src/main/assets/gifs/138.gif b/app/src/main/assets/gifs/138.gif similarity index 100% rename from androidApp/src/main/assets/gifs/138.gif rename to app/src/main/assets/gifs/138.gif diff --git a/androidApp/src/main/assets/gifs/139.gif b/app/src/main/assets/gifs/139.gif similarity index 100% rename from androidApp/src/main/assets/gifs/139.gif rename to app/src/main/assets/gifs/139.gif diff --git a/androidApp/src/main/assets/gifs/140.gif b/app/src/main/assets/gifs/140.gif similarity index 100% rename from androidApp/src/main/assets/gifs/140.gif rename to app/src/main/assets/gifs/140.gif diff --git a/androidApp/src/main/assets/gifs/141.gif b/app/src/main/assets/gifs/141.gif similarity index 100% rename from androidApp/src/main/assets/gifs/141.gif rename to app/src/main/assets/gifs/141.gif diff --git a/androidApp/src/main/assets/gifs/142.gif b/app/src/main/assets/gifs/142.gif similarity index 100% rename from androidApp/src/main/assets/gifs/142.gif rename to app/src/main/assets/gifs/142.gif diff --git a/androidApp/src/main/assets/gifs/143.gif b/app/src/main/assets/gifs/143.gif similarity index 100% rename from androidApp/src/main/assets/gifs/143.gif rename to app/src/main/assets/gifs/143.gif diff --git a/androidApp/src/main/assets/gifs/144.gif b/app/src/main/assets/gifs/144.gif similarity index 100% rename from androidApp/src/main/assets/gifs/144.gif rename to app/src/main/assets/gifs/144.gif diff --git a/androidApp/src/main/assets/gifs/145.gif b/app/src/main/assets/gifs/145.gif similarity index 100% rename from androidApp/src/main/assets/gifs/145.gif rename to app/src/main/assets/gifs/145.gif diff --git a/androidApp/src/main/assets/gifs/146.gif b/app/src/main/assets/gifs/146.gif similarity index 100% rename from androidApp/src/main/assets/gifs/146.gif rename to app/src/main/assets/gifs/146.gif diff --git a/androidApp/src/main/assets/gifs/147.gif b/app/src/main/assets/gifs/147.gif similarity index 100% rename from androidApp/src/main/assets/gifs/147.gif rename to app/src/main/assets/gifs/147.gif diff --git a/androidApp/src/main/assets/gifs/148.gif b/app/src/main/assets/gifs/148.gif similarity index 100% rename from androidApp/src/main/assets/gifs/148.gif rename to app/src/main/assets/gifs/148.gif diff --git a/androidApp/src/main/assets/gifs/149.gif b/app/src/main/assets/gifs/149.gif similarity index 100% rename from androidApp/src/main/assets/gifs/149.gif rename to app/src/main/assets/gifs/149.gif diff --git a/androidApp/src/main/assets/gifs/150.gif b/app/src/main/assets/gifs/150.gif similarity index 100% rename from androidApp/src/main/assets/gifs/150.gif rename to app/src/main/assets/gifs/150.gif diff --git a/androidApp/src/main/assets/gifs/151.gif b/app/src/main/assets/gifs/151.gif similarity index 100% rename from androidApp/src/main/assets/gifs/151.gif rename to app/src/main/assets/gifs/151.gif diff --git a/androidApp/src/main/assets/gifs/152.gif b/app/src/main/assets/gifs/152.gif similarity index 100% rename from androidApp/src/main/assets/gifs/152.gif rename to app/src/main/assets/gifs/152.gif diff --git a/androidApp/src/main/kotlin/plus/rua/project/AGENTS.md b/app/src/main/kotlin/plus/rua/project/AGENTS.md similarity index 100% rename from androidApp/src/main/kotlin/plus/rua/project/AGENTS.md rename to app/src/main/kotlin/plus/rua/project/AGENTS.md diff --git a/androidApp/src/main/kotlin/plus/rua/project/AboutActivity.kt b/app/src/main/kotlin/plus/rua/project/AboutActivity.kt similarity index 100% rename from androidApp/src/main/kotlin/plus/rua/project/AboutActivity.kt rename to app/src/main/kotlin/plus/rua/project/AboutActivity.kt diff --git a/androidApp/src/main/kotlin/plus/rua/project/LicensesActivity.kt b/app/src/main/kotlin/plus/rua/project/LicensesActivity.kt similarity index 100% rename from androidApp/src/main/kotlin/plus/rua/project/LicensesActivity.kt rename to app/src/main/kotlin/plus/rua/project/LicensesActivity.kt diff --git a/androidApp/src/main/kotlin/plus/rua/project/MainActivity.kt b/app/src/main/kotlin/plus/rua/project/MainActivity.kt similarity index 100% rename from androidApp/src/main/kotlin/plus/rua/project/MainActivity.kt rename to app/src/main/kotlin/plus/rua/project/MainActivity.kt diff --git a/androidApp/src/main/res/anim/slide_in_left.xml b/app/src/main/res/anim/slide_in_left.xml similarity index 100% rename from androidApp/src/main/res/anim/slide_in_left.xml rename to app/src/main/res/anim/slide_in_left.xml diff --git a/androidApp/src/main/res/anim/slide_in_right.xml b/app/src/main/res/anim/slide_in_right.xml similarity index 100% rename from androidApp/src/main/res/anim/slide_in_right.xml rename to app/src/main/res/anim/slide_in_right.xml diff --git a/androidApp/src/main/res/anim/slide_out_left.xml b/app/src/main/res/anim/slide_out_left.xml similarity index 100% rename from androidApp/src/main/res/anim/slide_out_left.xml rename to app/src/main/res/anim/slide_out_left.xml diff --git a/androidApp/src/main/res/anim/slide_out_right.xml b/app/src/main/res/anim/slide_out_right.xml similarity index 100% rename from androidApp/src/main/res/anim/slide_out_right.xml rename to app/src/main/res/anim/slide_out_right.xml diff --git a/androidApp/src/main/res/mipmap-hdpi/ic_launcher.png b/app/src/main/res/mipmap-hdpi/ic_launcher.png similarity index 100% rename from androidApp/src/main/res/mipmap-hdpi/ic_launcher.png rename to app/src/main/res/mipmap-hdpi/ic_launcher.png diff --git a/androidApp/src/main/res/mipmap-hdpi/ic_launcher_round.png b/app/src/main/res/mipmap-hdpi/ic_launcher_round.png similarity index 100% rename from androidApp/src/main/res/mipmap-hdpi/ic_launcher_round.png rename to app/src/main/res/mipmap-hdpi/ic_launcher_round.png diff --git a/androidApp/src/main/res/mipmap-mdpi/ic_launcher.png b/app/src/main/res/mipmap-mdpi/ic_launcher.png similarity index 100% rename from androidApp/src/main/res/mipmap-mdpi/ic_launcher.png rename to app/src/main/res/mipmap-mdpi/ic_launcher.png diff --git a/androidApp/src/main/res/mipmap-mdpi/ic_launcher_round.png b/app/src/main/res/mipmap-mdpi/ic_launcher_round.png similarity index 100% rename from androidApp/src/main/res/mipmap-mdpi/ic_launcher_round.png rename to app/src/main/res/mipmap-mdpi/ic_launcher_round.png diff --git a/androidApp/src/main/res/mipmap-xhdpi/ic_launcher.png b/app/src/main/res/mipmap-xhdpi/ic_launcher.png similarity index 100% rename from androidApp/src/main/res/mipmap-xhdpi/ic_launcher.png rename to app/src/main/res/mipmap-xhdpi/ic_launcher.png diff --git a/androidApp/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png similarity index 100% rename from androidApp/src/main/res/mipmap-xhdpi/ic_launcher_round.png rename to app/src/main/res/mipmap-xhdpi/ic_launcher_round.png diff --git a/androidApp/src/main/res/mipmap-xxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png similarity index 100% rename from androidApp/src/main/res/mipmap-xxhdpi/ic_launcher.png rename to app/src/main/res/mipmap-xxhdpi/ic_launcher.png diff --git a/androidApp/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png similarity index 100% rename from androidApp/src/main/res/mipmap-xxhdpi/ic_launcher_round.png rename to app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png diff --git a/androidApp/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png similarity index 100% rename from androidApp/src/main/res/mipmap-xxxhdpi/ic_launcher.png rename to app/src/main/res/mipmap-xxxhdpi/ic_launcher.png diff --git a/androidApp/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png similarity index 100% rename from androidApp/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png rename to app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png diff --git a/androidApp/src/main/res/values-night/themes.xml b/app/src/main/res/values-night/themes.xml similarity index 100% rename from androidApp/src/main/res/values-night/themes.xml rename to app/src/main/res/values-night/themes.xml diff --git a/androidApp/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml similarity index 100% rename from androidApp/src/main/res/values/strings.xml rename to app/src/main/res/values/strings.xml diff --git a/androidApp/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml similarity index 100% rename from androidApp/src/main/res/values/themes.xml rename to app/src/main/res/values/themes.xml diff --git a/shared/AGENTS.md b/core/AGENTS.md similarity index 100% rename from shared/AGENTS.md rename to core/AGENTS.md diff --git a/shared/build.gradle.kts b/core/build.gradle.kts similarity index 94% rename from shared/build.gradle.kts rename to core/build.gradle.kts index 6ba48d4..3d0fa43 100644 --- a/shared/build.gradle.kts +++ b/core/build.gradle.kts @@ -56,6 +56,6 @@ dependencies { implementation(libs.sketch.compose) implementation(libs.sketch.animated.gif) - testImplementation(libs.kotlin.test) + testImplementation("org.jetbrains.kotlin:kotlin-test-junit:${libs.versions.kotlin.get()}") testImplementation(libs.kotlinx.coroutines.test) } diff --git a/shared/src/main/AGENTS.md b/core/src/main/AGENTS.md similarity index 100% rename from shared/src/main/AGENTS.md rename to core/src/main/AGENTS.md diff --git a/shared/src/main/assets/app_icon.png b/core/src/main/assets/app_icon.png similarity index 100% rename from shared/src/main/assets/app_icon.png rename to core/src/main/assets/app_icon.png diff --git a/shared/src/main/assets/app_icon.webp b/core/src/main/assets/app_icon.webp similarity index 100% rename from shared/src/main/assets/app_icon.webp rename to core/src/main/assets/app_icon.webp diff --git a/shared/src/main/assets/gifs/001.gif b/core/src/main/assets/gifs/001.gif similarity index 100% rename from shared/src/main/assets/gifs/001.gif rename to core/src/main/assets/gifs/001.gif diff --git a/shared/src/main/assets/gifs/002.gif b/core/src/main/assets/gifs/002.gif similarity index 100% rename from shared/src/main/assets/gifs/002.gif rename to core/src/main/assets/gifs/002.gif diff --git a/shared/src/main/assets/gifs/003.gif b/core/src/main/assets/gifs/003.gif similarity index 100% rename from shared/src/main/assets/gifs/003.gif rename to core/src/main/assets/gifs/003.gif diff --git a/shared/src/main/assets/gifs/004.gif b/core/src/main/assets/gifs/004.gif similarity index 100% rename from shared/src/main/assets/gifs/004.gif rename to core/src/main/assets/gifs/004.gif diff --git a/shared/src/main/assets/gifs/005.gif b/core/src/main/assets/gifs/005.gif similarity index 100% rename from shared/src/main/assets/gifs/005.gif rename to core/src/main/assets/gifs/005.gif diff --git a/shared/src/main/assets/gifs/006.gif b/core/src/main/assets/gifs/006.gif similarity index 100% rename from shared/src/main/assets/gifs/006.gif rename to core/src/main/assets/gifs/006.gif diff --git a/shared/src/main/assets/gifs/007.gif b/core/src/main/assets/gifs/007.gif similarity index 100% rename from shared/src/main/assets/gifs/007.gif rename to core/src/main/assets/gifs/007.gif diff --git a/shared/src/main/assets/gifs/008.gif b/core/src/main/assets/gifs/008.gif similarity index 100% rename from shared/src/main/assets/gifs/008.gif rename to core/src/main/assets/gifs/008.gif diff --git a/shared/src/main/assets/gifs/009.gif b/core/src/main/assets/gifs/009.gif similarity index 100% rename from shared/src/main/assets/gifs/009.gif rename to core/src/main/assets/gifs/009.gif diff --git a/shared/src/main/assets/gifs/010.gif b/core/src/main/assets/gifs/010.gif similarity index 100% rename from shared/src/main/assets/gifs/010.gif rename to core/src/main/assets/gifs/010.gif diff --git a/shared/src/main/assets/gifs/011.gif b/core/src/main/assets/gifs/011.gif similarity index 100% rename from shared/src/main/assets/gifs/011.gif rename to core/src/main/assets/gifs/011.gif diff --git a/shared/src/main/assets/gifs/012.gif b/core/src/main/assets/gifs/012.gif similarity index 100% rename from shared/src/main/assets/gifs/012.gif rename to core/src/main/assets/gifs/012.gif diff --git a/shared/src/main/assets/gifs/013.gif b/core/src/main/assets/gifs/013.gif similarity index 100% rename from shared/src/main/assets/gifs/013.gif rename to core/src/main/assets/gifs/013.gif diff --git a/shared/src/main/assets/gifs/014.gif b/core/src/main/assets/gifs/014.gif similarity index 100% rename from shared/src/main/assets/gifs/014.gif rename to core/src/main/assets/gifs/014.gif diff --git a/shared/src/main/assets/gifs/015.gif b/core/src/main/assets/gifs/015.gif similarity index 100% rename from shared/src/main/assets/gifs/015.gif rename to core/src/main/assets/gifs/015.gif diff --git a/shared/src/main/assets/gifs/016.gif b/core/src/main/assets/gifs/016.gif similarity index 100% rename from shared/src/main/assets/gifs/016.gif rename to core/src/main/assets/gifs/016.gif diff --git a/shared/src/main/assets/gifs/017.gif b/core/src/main/assets/gifs/017.gif similarity index 100% rename from shared/src/main/assets/gifs/017.gif rename to core/src/main/assets/gifs/017.gif diff --git a/shared/src/main/assets/gifs/018.gif b/core/src/main/assets/gifs/018.gif similarity index 100% rename from shared/src/main/assets/gifs/018.gif rename to core/src/main/assets/gifs/018.gif diff --git a/shared/src/main/assets/gifs/019.gif b/core/src/main/assets/gifs/019.gif similarity index 100% rename from shared/src/main/assets/gifs/019.gif rename to core/src/main/assets/gifs/019.gif diff --git a/shared/src/main/assets/gifs/020.gif b/core/src/main/assets/gifs/020.gif similarity index 100% rename from shared/src/main/assets/gifs/020.gif rename to core/src/main/assets/gifs/020.gif diff --git a/shared/src/main/assets/gifs/021.gif b/core/src/main/assets/gifs/021.gif similarity index 100% rename from shared/src/main/assets/gifs/021.gif rename to core/src/main/assets/gifs/021.gif diff --git a/shared/src/main/assets/gifs/022.gif b/core/src/main/assets/gifs/022.gif similarity index 100% rename from shared/src/main/assets/gifs/022.gif rename to core/src/main/assets/gifs/022.gif diff --git a/shared/src/main/assets/gifs/023.gif b/core/src/main/assets/gifs/023.gif similarity index 100% rename from shared/src/main/assets/gifs/023.gif rename to core/src/main/assets/gifs/023.gif diff --git a/shared/src/main/assets/gifs/024.gif b/core/src/main/assets/gifs/024.gif similarity index 100% rename from shared/src/main/assets/gifs/024.gif rename to core/src/main/assets/gifs/024.gif diff --git a/shared/src/main/assets/gifs/025.gif b/core/src/main/assets/gifs/025.gif similarity index 100% rename from shared/src/main/assets/gifs/025.gif rename to core/src/main/assets/gifs/025.gif diff --git a/shared/src/main/assets/gifs/026.gif b/core/src/main/assets/gifs/026.gif similarity index 100% rename from shared/src/main/assets/gifs/026.gif rename to core/src/main/assets/gifs/026.gif diff --git a/shared/src/main/assets/gifs/027.gif b/core/src/main/assets/gifs/027.gif similarity index 100% rename from shared/src/main/assets/gifs/027.gif rename to core/src/main/assets/gifs/027.gif diff --git a/shared/src/main/assets/gifs/028.gif b/core/src/main/assets/gifs/028.gif similarity index 100% rename from shared/src/main/assets/gifs/028.gif rename to core/src/main/assets/gifs/028.gif diff --git a/shared/src/main/assets/gifs/029.gif b/core/src/main/assets/gifs/029.gif similarity index 100% rename from shared/src/main/assets/gifs/029.gif rename to core/src/main/assets/gifs/029.gif diff --git a/shared/src/main/assets/gifs/030.gif b/core/src/main/assets/gifs/030.gif similarity index 100% rename from shared/src/main/assets/gifs/030.gif rename to core/src/main/assets/gifs/030.gif diff --git a/shared/src/main/assets/gifs/031.gif b/core/src/main/assets/gifs/031.gif similarity index 100% rename from shared/src/main/assets/gifs/031.gif rename to core/src/main/assets/gifs/031.gif diff --git a/shared/src/main/assets/gifs/032.gif b/core/src/main/assets/gifs/032.gif similarity index 100% rename from shared/src/main/assets/gifs/032.gif rename to core/src/main/assets/gifs/032.gif diff --git a/shared/src/main/assets/gifs/033.gif b/core/src/main/assets/gifs/033.gif similarity index 100% rename from shared/src/main/assets/gifs/033.gif rename to core/src/main/assets/gifs/033.gif diff --git a/shared/src/main/assets/gifs/034.gif b/core/src/main/assets/gifs/034.gif similarity index 100% rename from shared/src/main/assets/gifs/034.gif rename to core/src/main/assets/gifs/034.gif diff --git a/shared/src/main/assets/gifs/035.gif b/core/src/main/assets/gifs/035.gif similarity index 100% rename from shared/src/main/assets/gifs/035.gif rename to core/src/main/assets/gifs/035.gif diff --git a/shared/src/main/assets/gifs/036.gif b/core/src/main/assets/gifs/036.gif similarity index 100% rename from shared/src/main/assets/gifs/036.gif rename to core/src/main/assets/gifs/036.gif diff --git a/shared/src/main/assets/gifs/037.gif b/core/src/main/assets/gifs/037.gif similarity index 100% rename from shared/src/main/assets/gifs/037.gif rename to core/src/main/assets/gifs/037.gif diff --git a/shared/src/main/assets/gifs/038.gif b/core/src/main/assets/gifs/038.gif similarity index 100% rename from shared/src/main/assets/gifs/038.gif rename to core/src/main/assets/gifs/038.gif diff --git a/shared/src/main/assets/gifs/039.gif b/core/src/main/assets/gifs/039.gif similarity index 100% rename from shared/src/main/assets/gifs/039.gif rename to core/src/main/assets/gifs/039.gif diff --git a/shared/src/main/assets/gifs/040.gif b/core/src/main/assets/gifs/040.gif similarity index 100% rename from shared/src/main/assets/gifs/040.gif rename to core/src/main/assets/gifs/040.gif diff --git a/shared/src/main/assets/gifs/041.gif b/core/src/main/assets/gifs/041.gif similarity index 100% rename from shared/src/main/assets/gifs/041.gif rename to core/src/main/assets/gifs/041.gif diff --git a/shared/src/main/assets/gifs/042.gif b/core/src/main/assets/gifs/042.gif similarity index 100% rename from shared/src/main/assets/gifs/042.gif rename to core/src/main/assets/gifs/042.gif diff --git a/shared/src/main/assets/gifs/043.gif b/core/src/main/assets/gifs/043.gif similarity index 100% rename from shared/src/main/assets/gifs/043.gif rename to core/src/main/assets/gifs/043.gif diff --git a/shared/src/main/assets/gifs/044.gif b/core/src/main/assets/gifs/044.gif similarity index 100% rename from shared/src/main/assets/gifs/044.gif rename to core/src/main/assets/gifs/044.gif diff --git a/shared/src/main/assets/gifs/045.gif b/core/src/main/assets/gifs/045.gif similarity index 100% rename from shared/src/main/assets/gifs/045.gif rename to core/src/main/assets/gifs/045.gif diff --git a/shared/src/main/assets/gifs/046.gif b/core/src/main/assets/gifs/046.gif similarity index 100% rename from shared/src/main/assets/gifs/046.gif rename to core/src/main/assets/gifs/046.gif diff --git a/shared/src/main/assets/gifs/047.gif b/core/src/main/assets/gifs/047.gif similarity index 100% rename from shared/src/main/assets/gifs/047.gif rename to core/src/main/assets/gifs/047.gif diff --git a/shared/src/main/assets/gifs/048.gif b/core/src/main/assets/gifs/048.gif similarity index 100% rename from shared/src/main/assets/gifs/048.gif rename to core/src/main/assets/gifs/048.gif diff --git a/shared/src/main/assets/gifs/049.gif b/core/src/main/assets/gifs/049.gif similarity index 100% rename from shared/src/main/assets/gifs/049.gif rename to core/src/main/assets/gifs/049.gif diff --git a/shared/src/main/assets/gifs/050.gif b/core/src/main/assets/gifs/050.gif similarity index 100% rename from shared/src/main/assets/gifs/050.gif rename to core/src/main/assets/gifs/050.gif diff --git a/shared/src/main/assets/gifs/051.gif b/core/src/main/assets/gifs/051.gif similarity index 100% rename from shared/src/main/assets/gifs/051.gif rename to core/src/main/assets/gifs/051.gif diff --git a/shared/src/main/assets/gifs/052.gif b/core/src/main/assets/gifs/052.gif similarity index 100% rename from shared/src/main/assets/gifs/052.gif rename to core/src/main/assets/gifs/052.gif diff --git a/shared/src/main/assets/gifs/053.gif b/core/src/main/assets/gifs/053.gif similarity index 100% rename from shared/src/main/assets/gifs/053.gif rename to core/src/main/assets/gifs/053.gif diff --git a/shared/src/main/assets/gifs/054.gif b/core/src/main/assets/gifs/054.gif similarity index 100% rename from shared/src/main/assets/gifs/054.gif rename to core/src/main/assets/gifs/054.gif diff --git a/shared/src/main/assets/gifs/055.gif b/core/src/main/assets/gifs/055.gif similarity index 100% rename from shared/src/main/assets/gifs/055.gif rename to core/src/main/assets/gifs/055.gif diff --git a/shared/src/main/assets/gifs/056.gif b/core/src/main/assets/gifs/056.gif similarity index 100% rename from shared/src/main/assets/gifs/056.gif rename to core/src/main/assets/gifs/056.gif diff --git a/shared/src/main/assets/gifs/057.gif b/core/src/main/assets/gifs/057.gif similarity index 100% rename from shared/src/main/assets/gifs/057.gif rename to core/src/main/assets/gifs/057.gif diff --git a/shared/src/main/assets/gifs/058.gif b/core/src/main/assets/gifs/058.gif similarity index 100% rename from shared/src/main/assets/gifs/058.gif rename to core/src/main/assets/gifs/058.gif diff --git a/shared/src/main/assets/gifs/059.gif b/core/src/main/assets/gifs/059.gif similarity index 100% rename from shared/src/main/assets/gifs/059.gif rename to core/src/main/assets/gifs/059.gif diff --git a/shared/src/main/assets/gifs/060.gif b/core/src/main/assets/gifs/060.gif similarity index 100% rename from shared/src/main/assets/gifs/060.gif rename to core/src/main/assets/gifs/060.gif diff --git a/shared/src/main/assets/gifs/061.gif b/core/src/main/assets/gifs/061.gif similarity index 100% rename from shared/src/main/assets/gifs/061.gif rename to core/src/main/assets/gifs/061.gif diff --git a/shared/src/main/assets/gifs/062.gif b/core/src/main/assets/gifs/062.gif similarity index 100% rename from shared/src/main/assets/gifs/062.gif rename to core/src/main/assets/gifs/062.gif diff --git a/shared/src/main/assets/gifs/063.gif b/core/src/main/assets/gifs/063.gif similarity index 100% rename from shared/src/main/assets/gifs/063.gif rename to core/src/main/assets/gifs/063.gif diff --git a/shared/src/main/assets/gifs/064.gif b/core/src/main/assets/gifs/064.gif similarity index 100% rename from shared/src/main/assets/gifs/064.gif rename to core/src/main/assets/gifs/064.gif diff --git a/shared/src/main/assets/gifs/065.gif b/core/src/main/assets/gifs/065.gif similarity index 100% rename from shared/src/main/assets/gifs/065.gif rename to core/src/main/assets/gifs/065.gif diff --git a/shared/src/main/assets/gifs/066.gif b/core/src/main/assets/gifs/066.gif similarity index 100% rename from shared/src/main/assets/gifs/066.gif rename to core/src/main/assets/gifs/066.gif diff --git a/shared/src/main/assets/gifs/067.gif b/core/src/main/assets/gifs/067.gif similarity index 100% rename from shared/src/main/assets/gifs/067.gif rename to core/src/main/assets/gifs/067.gif diff --git a/shared/src/main/assets/gifs/068.gif b/core/src/main/assets/gifs/068.gif similarity index 100% rename from shared/src/main/assets/gifs/068.gif rename to core/src/main/assets/gifs/068.gif diff --git a/shared/src/main/assets/gifs/069.gif b/core/src/main/assets/gifs/069.gif similarity index 100% rename from shared/src/main/assets/gifs/069.gif rename to core/src/main/assets/gifs/069.gif diff --git a/shared/src/main/assets/gifs/070.gif b/core/src/main/assets/gifs/070.gif similarity index 100% rename from shared/src/main/assets/gifs/070.gif rename to core/src/main/assets/gifs/070.gif diff --git a/shared/src/main/assets/gifs/071.gif b/core/src/main/assets/gifs/071.gif similarity index 100% rename from shared/src/main/assets/gifs/071.gif rename to core/src/main/assets/gifs/071.gif diff --git a/shared/src/main/assets/gifs/072.gif b/core/src/main/assets/gifs/072.gif similarity index 100% rename from shared/src/main/assets/gifs/072.gif rename to core/src/main/assets/gifs/072.gif diff --git a/shared/src/main/assets/gifs/073.gif b/core/src/main/assets/gifs/073.gif similarity index 100% rename from shared/src/main/assets/gifs/073.gif rename to core/src/main/assets/gifs/073.gif diff --git a/shared/src/main/assets/gifs/074.gif b/core/src/main/assets/gifs/074.gif similarity index 100% rename from shared/src/main/assets/gifs/074.gif rename to core/src/main/assets/gifs/074.gif diff --git a/shared/src/main/assets/gifs/075.gif b/core/src/main/assets/gifs/075.gif similarity index 100% rename from shared/src/main/assets/gifs/075.gif rename to core/src/main/assets/gifs/075.gif diff --git a/shared/src/main/assets/gifs/076.gif b/core/src/main/assets/gifs/076.gif similarity index 100% rename from shared/src/main/assets/gifs/076.gif rename to core/src/main/assets/gifs/076.gif diff --git a/shared/src/main/assets/gifs/077.gif b/core/src/main/assets/gifs/077.gif similarity index 100% rename from shared/src/main/assets/gifs/077.gif rename to core/src/main/assets/gifs/077.gif diff --git a/shared/src/main/assets/gifs/078.gif b/core/src/main/assets/gifs/078.gif similarity index 100% rename from shared/src/main/assets/gifs/078.gif rename to core/src/main/assets/gifs/078.gif diff --git a/shared/src/main/assets/gifs/079.gif b/core/src/main/assets/gifs/079.gif similarity index 100% rename from shared/src/main/assets/gifs/079.gif rename to core/src/main/assets/gifs/079.gif diff --git a/shared/src/main/assets/gifs/080.gif b/core/src/main/assets/gifs/080.gif similarity index 100% rename from shared/src/main/assets/gifs/080.gif rename to core/src/main/assets/gifs/080.gif diff --git a/shared/src/main/assets/gifs/081.gif b/core/src/main/assets/gifs/081.gif similarity index 100% rename from shared/src/main/assets/gifs/081.gif rename to core/src/main/assets/gifs/081.gif diff --git a/shared/src/main/assets/gifs/082.gif b/core/src/main/assets/gifs/082.gif similarity index 100% rename from shared/src/main/assets/gifs/082.gif rename to core/src/main/assets/gifs/082.gif diff --git a/shared/src/main/assets/gifs/083.gif b/core/src/main/assets/gifs/083.gif similarity index 100% rename from shared/src/main/assets/gifs/083.gif rename to core/src/main/assets/gifs/083.gif diff --git a/shared/src/main/assets/gifs/084.gif b/core/src/main/assets/gifs/084.gif similarity index 100% rename from shared/src/main/assets/gifs/084.gif rename to core/src/main/assets/gifs/084.gif diff --git a/shared/src/main/assets/gifs/085.gif b/core/src/main/assets/gifs/085.gif similarity index 100% rename from shared/src/main/assets/gifs/085.gif rename to core/src/main/assets/gifs/085.gif diff --git a/shared/src/main/assets/gifs/086.gif b/core/src/main/assets/gifs/086.gif similarity index 100% rename from shared/src/main/assets/gifs/086.gif rename to core/src/main/assets/gifs/086.gif diff --git a/shared/src/main/assets/gifs/087.gif b/core/src/main/assets/gifs/087.gif similarity index 100% rename from shared/src/main/assets/gifs/087.gif rename to core/src/main/assets/gifs/087.gif diff --git a/shared/src/main/assets/gifs/088.gif b/core/src/main/assets/gifs/088.gif similarity index 100% rename from shared/src/main/assets/gifs/088.gif rename to core/src/main/assets/gifs/088.gif diff --git a/shared/src/main/assets/gifs/089.gif b/core/src/main/assets/gifs/089.gif similarity index 100% rename from shared/src/main/assets/gifs/089.gif rename to core/src/main/assets/gifs/089.gif diff --git a/shared/src/main/assets/gifs/090.gif b/core/src/main/assets/gifs/090.gif similarity index 100% rename from shared/src/main/assets/gifs/090.gif rename to core/src/main/assets/gifs/090.gif diff --git a/shared/src/main/assets/gifs/091.gif b/core/src/main/assets/gifs/091.gif similarity index 100% rename from shared/src/main/assets/gifs/091.gif rename to core/src/main/assets/gifs/091.gif diff --git a/shared/src/main/assets/gifs/092.gif b/core/src/main/assets/gifs/092.gif similarity index 100% rename from shared/src/main/assets/gifs/092.gif rename to core/src/main/assets/gifs/092.gif diff --git a/shared/src/main/assets/gifs/093.gif b/core/src/main/assets/gifs/093.gif similarity index 100% rename from shared/src/main/assets/gifs/093.gif rename to core/src/main/assets/gifs/093.gif diff --git a/shared/src/main/assets/gifs/094.gif b/core/src/main/assets/gifs/094.gif similarity index 100% rename from shared/src/main/assets/gifs/094.gif rename to core/src/main/assets/gifs/094.gif diff --git a/shared/src/main/assets/gifs/095.gif b/core/src/main/assets/gifs/095.gif similarity index 100% rename from shared/src/main/assets/gifs/095.gif rename to core/src/main/assets/gifs/095.gif diff --git a/shared/src/main/assets/gifs/096.gif b/core/src/main/assets/gifs/096.gif similarity index 100% rename from shared/src/main/assets/gifs/096.gif rename to core/src/main/assets/gifs/096.gif diff --git a/shared/src/main/assets/gifs/097.gif b/core/src/main/assets/gifs/097.gif similarity index 100% rename from shared/src/main/assets/gifs/097.gif rename to core/src/main/assets/gifs/097.gif diff --git a/shared/src/main/assets/gifs/098.gif b/core/src/main/assets/gifs/098.gif similarity index 100% rename from shared/src/main/assets/gifs/098.gif rename to core/src/main/assets/gifs/098.gif diff --git a/shared/src/main/assets/gifs/099.gif b/core/src/main/assets/gifs/099.gif similarity index 100% rename from shared/src/main/assets/gifs/099.gif rename to core/src/main/assets/gifs/099.gif diff --git a/shared/src/main/assets/gifs/100.gif b/core/src/main/assets/gifs/100.gif similarity index 100% rename from shared/src/main/assets/gifs/100.gif rename to core/src/main/assets/gifs/100.gif diff --git a/shared/src/main/assets/gifs/101.gif b/core/src/main/assets/gifs/101.gif similarity index 100% rename from shared/src/main/assets/gifs/101.gif rename to core/src/main/assets/gifs/101.gif diff --git a/shared/src/main/assets/gifs/102.gif b/core/src/main/assets/gifs/102.gif similarity index 100% rename from shared/src/main/assets/gifs/102.gif rename to core/src/main/assets/gifs/102.gif diff --git a/shared/src/main/assets/gifs/103.gif b/core/src/main/assets/gifs/103.gif similarity index 100% rename from shared/src/main/assets/gifs/103.gif rename to core/src/main/assets/gifs/103.gif diff --git a/shared/src/main/assets/gifs/104.gif b/core/src/main/assets/gifs/104.gif similarity index 100% rename from shared/src/main/assets/gifs/104.gif rename to core/src/main/assets/gifs/104.gif diff --git a/shared/src/main/assets/gifs/105.gif b/core/src/main/assets/gifs/105.gif similarity index 100% rename from shared/src/main/assets/gifs/105.gif rename to core/src/main/assets/gifs/105.gif diff --git a/shared/src/main/assets/gifs/106.gif b/core/src/main/assets/gifs/106.gif similarity index 100% rename from shared/src/main/assets/gifs/106.gif rename to core/src/main/assets/gifs/106.gif diff --git a/shared/src/main/assets/gifs/107.gif b/core/src/main/assets/gifs/107.gif similarity index 100% rename from shared/src/main/assets/gifs/107.gif rename to core/src/main/assets/gifs/107.gif diff --git a/shared/src/main/assets/gifs/108.gif b/core/src/main/assets/gifs/108.gif similarity index 100% rename from shared/src/main/assets/gifs/108.gif rename to core/src/main/assets/gifs/108.gif diff --git a/shared/src/main/assets/gifs/109.gif b/core/src/main/assets/gifs/109.gif similarity index 100% rename from shared/src/main/assets/gifs/109.gif rename to core/src/main/assets/gifs/109.gif diff --git a/shared/src/main/assets/gifs/110.gif b/core/src/main/assets/gifs/110.gif similarity index 100% rename from shared/src/main/assets/gifs/110.gif rename to core/src/main/assets/gifs/110.gif diff --git a/shared/src/main/assets/gifs/111.gif b/core/src/main/assets/gifs/111.gif similarity index 100% rename from shared/src/main/assets/gifs/111.gif rename to core/src/main/assets/gifs/111.gif diff --git a/shared/src/main/assets/gifs/112.gif b/core/src/main/assets/gifs/112.gif similarity index 100% rename from shared/src/main/assets/gifs/112.gif rename to core/src/main/assets/gifs/112.gif diff --git a/shared/src/main/assets/gifs/113.gif b/core/src/main/assets/gifs/113.gif similarity index 100% rename from shared/src/main/assets/gifs/113.gif rename to core/src/main/assets/gifs/113.gif diff --git a/shared/src/main/assets/gifs/114.gif b/core/src/main/assets/gifs/114.gif similarity index 100% rename from shared/src/main/assets/gifs/114.gif rename to core/src/main/assets/gifs/114.gif diff --git a/shared/src/main/assets/gifs/115.gif b/core/src/main/assets/gifs/115.gif similarity index 100% rename from shared/src/main/assets/gifs/115.gif rename to core/src/main/assets/gifs/115.gif diff --git a/shared/src/main/assets/gifs/116.gif b/core/src/main/assets/gifs/116.gif similarity index 100% rename from shared/src/main/assets/gifs/116.gif rename to core/src/main/assets/gifs/116.gif diff --git a/shared/src/main/assets/gifs/117.gif b/core/src/main/assets/gifs/117.gif similarity index 100% rename from shared/src/main/assets/gifs/117.gif rename to core/src/main/assets/gifs/117.gif diff --git a/shared/src/main/assets/gifs/118.gif b/core/src/main/assets/gifs/118.gif similarity index 100% rename from shared/src/main/assets/gifs/118.gif rename to core/src/main/assets/gifs/118.gif diff --git a/shared/src/main/assets/gifs/119.gif b/core/src/main/assets/gifs/119.gif similarity index 100% rename from shared/src/main/assets/gifs/119.gif rename to core/src/main/assets/gifs/119.gif diff --git a/shared/src/main/assets/gifs/120.gif b/core/src/main/assets/gifs/120.gif similarity index 100% rename from shared/src/main/assets/gifs/120.gif rename to core/src/main/assets/gifs/120.gif diff --git a/shared/src/main/assets/gifs/121.gif b/core/src/main/assets/gifs/121.gif similarity index 100% rename from shared/src/main/assets/gifs/121.gif rename to core/src/main/assets/gifs/121.gif diff --git a/shared/src/main/assets/gifs/122.gif b/core/src/main/assets/gifs/122.gif similarity index 100% rename from shared/src/main/assets/gifs/122.gif rename to core/src/main/assets/gifs/122.gif diff --git a/shared/src/main/assets/gifs/123.gif b/core/src/main/assets/gifs/123.gif similarity index 100% rename from shared/src/main/assets/gifs/123.gif rename to core/src/main/assets/gifs/123.gif diff --git a/shared/src/main/assets/gifs/124.gif b/core/src/main/assets/gifs/124.gif similarity index 100% rename from shared/src/main/assets/gifs/124.gif rename to core/src/main/assets/gifs/124.gif diff --git a/shared/src/main/assets/gifs/125.gif b/core/src/main/assets/gifs/125.gif similarity index 100% rename from shared/src/main/assets/gifs/125.gif rename to core/src/main/assets/gifs/125.gif diff --git a/shared/src/main/assets/gifs/126.gif b/core/src/main/assets/gifs/126.gif similarity index 100% rename from shared/src/main/assets/gifs/126.gif rename to core/src/main/assets/gifs/126.gif diff --git a/shared/src/main/assets/gifs/127.gif b/core/src/main/assets/gifs/127.gif similarity index 100% rename from shared/src/main/assets/gifs/127.gif rename to core/src/main/assets/gifs/127.gif diff --git a/shared/src/main/assets/gifs/128.gif b/core/src/main/assets/gifs/128.gif similarity index 100% rename from shared/src/main/assets/gifs/128.gif rename to core/src/main/assets/gifs/128.gif diff --git a/shared/src/main/assets/gifs/129.gif b/core/src/main/assets/gifs/129.gif similarity index 100% rename from shared/src/main/assets/gifs/129.gif rename to core/src/main/assets/gifs/129.gif diff --git a/shared/src/main/assets/gifs/130.gif b/core/src/main/assets/gifs/130.gif similarity index 100% rename from shared/src/main/assets/gifs/130.gif rename to core/src/main/assets/gifs/130.gif diff --git a/shared/src/main/assets/gifs/131.gif b/core/src/main/assets/gifs/131.gif similarity index 100% rename from shared/src/main/assets/gifs/131.gif rename to core/src/main/assets/gifs/131.gif diff --git a/shared/src/main/assets/gifs/132.gif b/core/src/main/assets/gifs/132.gif similarity index 100% rename from shared/src/main/assets/gifs/132.gif rename to core/src/main/assets/gifs/132.gif diff --git a/shared/src/main/assets/gifs/133.gif b/core/src/main/assets/gifs/133.gif similarity index 100% rename from shared/src/main/assets/gifs/133.gif rename to core/src/main/assets/gifs/133.gif diff --git a/shared/src/main/assets/gifs/134.gif b/core/src/main/assets/gifs/134.gif similarity index 100% rename from shared/src/main/assets/gifs/134.gif rename to core/src/main/assets/gifs/134.gif diff --git a/shared/src/main/assets/gifs/135.gif b/core/src/main/assets/gifs/135.gif similarity index 100% rename from shared/src/main/assets/gifs/135.gif rename to core/src/main/assets/gifs/135.gif diff --git a/shared/src/main/assets/gifs/136.gif b/core/src/main/assets/gifs/136.gif similarity index 100% rename from shared/src/main/assets/gifs/136.gif rename to core/src/main/assets/gifs/136.gif diff --git a/shared/src/main/assets/gifs/137.gif b/core/src/main/assets/gifs/137.gif similarity index 100% rename from shared/src/main/assets/gifs/137.gif rename to core/src/main/assets/gifs/137.gif diff --git a/shared/src/main/assets/gifs/138.gif b/core/src/main/assets/gifs/138.gif similarity index 100% rename from shared/src/main/assets/gifs/138.gif rename to core/src/main/assets/gifs/138.gif diff --git a/shared/src/main/assets/gifs/139.gif b/core/src/main/assets/gifs/139.gif similarity index 100% rename from shared/src/main/assets/gifs/139.gif rename to core/src/main/assets/gifs/139.gif diff --git a/shared/src/main/assets/gifs/140.gif b/core/src/main/assets/gifs/140.gif similarity index 100% rename from shared/src/main/assets/gifs/140.gif rename to core/src/main/assets/gifs/140.gif diff --git a/shared/src/main/assets/gifs/141.gif b/core/src/main/assets/gifs/141.gif similarity index 100% rename from shared/src/main/assets/gifs/141.gif rename to core/src/main/assets/gifs/141.gif diff --git a/shared/src/main/assets/gifs/142.gif b/core/src/main/assets/gifs/142.gif similarity index 100% rename from shared/src/main/assets/gifs/142.gif rename to core/src/main/assets/gifs/142.gif diff --git a/shared/src/main/assets/gifs/143.gif b/core/src/main/assets/gifs/143.gif similarity index 100% rename from shared/src/main/assets/gifs/143.gif rename to core/src/main/assets/gifs/143.gif diff --git a/shared/src/main/assets/gifs/144.gif b/core/src/main/assets/gifs/144.gif similarity index 100% rename from shared/src/main/assets/gifs/144.gif rename to core/src/main/assets/gifs/144.gif diff --git a/shared/src/main/assets/gifs/145.gif b/core/src/main/assets/gifs/145.gif similarity index 100% rename from shared/src/main/assets/gifs/145.gif rename to core/src/main/assets/gifs/145.gif diff --git a/shared/src/main/assets/gifs/146.gif b/core/src/main/assets/gifs/146.gif similarity index 100% rename from shared/src/main/assets/gifs/146.gif rename to core/src/main/assets/gifs/146.gif diff --git a/shared/src/main/assets/gifs/147.gif b/core/src/main/assets/gifs/147.gif similarity index 100% rename from shared/src/main/assets/gifs/147.gif rename to core/src/main/assets/gifs/147.gif diff --git a/shared/src/main/assets/gifs/148.gif b/core/src/main/assets/gifs/148.gif similarity index 100% rename from shared/src/main/assets/gifs/148.gif rename to core/src/main/assets/gifs/148.gif diff --git a/shared/src/main/assets/gifs/149.gif b/core/src/main/assets/gifs/149.gif similarity index 100% rename from shared/src/main/assets/gifs/149.gif rename to core/src/main/assets/gifs/149.gif diff --git a/shared/src/main/assets/gifs/150.gif b/core/src/main/assets/gifs/150.gif similarity index 100% rename from shared/src/main/assets/gifs/150.gif rename to core/src/main/assets/gifs/150.gif diff --git a/shared/src/main/assets/gifs/151.gif b/core/src/main/assets/gifs/151.gif similarity index 100% rename from shared/src/main/assets/gifs/151.gif rename to core/src/main/assets/gifs/151.gif diff --git a/shared/src/main/assets/gifs/152.gif b/core/src/main/assets/gifs/152.gif similarity index 100% rename from shared/src/main/assets/gifs/152.gif rename to core/src/main/assets/gifs/152.gif diff --git a/shared/src/main/kotlin/plus/rua/project/AGENTS.md b/core/src/main/kotlin/plus/rua/project/AGENTS.md similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/AGENTS.md rename to core/src/main/kotlin/plus/rua/project/AGENTS.md diff --git a/shared/src/main/kotlin/plus/rua/project/AppInfo.kt b/core/src/main/kotlin/plus/rua/project/AppInfo.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/AppInfo.kt rename to core/src/main/kotlin/plus/rua/project/AppInfo.kt diff --git a/shared/src/main/kotlin/plus/rua/project/CalendarViewModel.kt b/core/src/main/kotlin/plus/rua/project/CalendarViewModel.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/CalendarViewModel.kt rename to core/src/main/kotlin/plus/rua/project/CalendarViewModel.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ComposeTrace.kt b/core/src/main/kotlin/plus/rua/project/ComposeTrace.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ComposeTrace.kt rename to core/src/main/kotlin/plus/rua/project/ComposeTrace.kt diff --git a/shared/src/main/kotlin/plus/rua/project/Platform.kt b/core/src/main/kotlin/plus/rua/project/Platform.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/Platform.kt rename to core/src/main/kotlin/plus/rua/project/Platform.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ShiftPattern.kt b/core/src/main/kotlin/plus/rua/project/ShiftPattern.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ShiftPattern.kt rename to core/src/main/kotlin/plus/rua/project/ShiftPattern.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/AGENTS.md b/core/src/main/kotlin/plus/rua/project/ui/AGENTS.md similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/AGENTS.md rename to core/src/main/kotlin/plus/rua/project/ui/AGENTS.md diff --git a/shared/src/main/kotlin/plus/rua/project/ui/AboutScreen.kt b/core/src/main/kotlin/plus/rua/project/ui/AboutScreen.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/AboutScreen.kt rename to core/src/main/kotlin/plus/rua/project/ui/AboutScreen.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/AnimatedGif.kt b/core/src/main/kotlin/plus/rua/project/ui/AnimatedGif.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/AnimatedGif.kt rename to core/src/main/kotlin/plus/rua/project/ui/AnimatedGif.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/BottomCard.kt b/core/src/main/kotlin/plus/rua/project/ui/BottomCard.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/BottomCard.kt rename to core/src/main/kotlin/plus/rua/project/ui/BottomCard.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/CalendarMonthPage.kt b/core/src/main/kotlin/plus/rua/project/ui/CalendarMonthPage.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/CalendarMonthPage.kt rename to core/src/main/kotlin/plus/rua/project/ui/CalendarMonthPage.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/CalendarMonthView.kt b/core/src/main/kotlin/plus/rua/project/ui/CalendarMonthView.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/CalendarMonthView.kt rename to core/src/main/kotlin/plus/rua/project/ui/CalendarMonthView.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/CalendarPager.kt b/core/src/main/kotlin/plus/rua/project/ui/CalendarPager.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/CalendarPager.kt rename to core/src/main/kotlin/plus/rua/project/ui/CalendarPager.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/CalendarUtils.kt b/core/src/main/kotlin/plus/rua/project/ui/CalendarUtils.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/CalendarUtils.kt rename to core/src/main/kotlin/plus/rua/project/ui/CalendarUtils.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/DayCell.kt b/core/src/main/kotlin/plus/rua/project/ui/DayCell.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/DayCell.kt rename to core/src/main/kotlin/plus/rua/project/ui/DayCell.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/Licenses.kt b/core/src/main/kotlin/plus/rua/project/ui/Licenses.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/Licenses.kt rename to core/src/main/kotlin/plus/rua/project/ui/Licenses.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/LicensesScreen.kt b/core/src/main/kotlin/plus/rua/project/ui/LicensesScreen.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/LicensesScreen.kt rename to core/src/main/kotlin/plus/rua/project/ui/LicensesScreen.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/MonthHeader.kt b/core/src/main/kotlin/plus/rua/project/ui/MonthHeader.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/MonthHeader.kt rename to core/src/main/kotlin/plus/rua/project/ui/MonthHeader.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/WeekPager.kt b/core/src/main/kotlin/plus/rua/project/ui/WeekPager.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/WeekPager.kt rename to core/src/main/kotlin/plus/rua/project/ui/WeekPager.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/WeekdayHeader.kt b/core/src/main/kotlin/plus/rua/project/ui/WeekdayHeader.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/WeekdayHeader.kt rename to core/src/main/kotlin/plus/rua/project/ui/WeekdayHeader.kt diff --git a/shared/src/main/kotlin/plus/rua/project/ui/YearGridView.kt b/core/src/main/kotlin/plus/rua/project/ui/YearGridView.kt similarity index 100% rename from shared/src/main/kotlin/plus/rua/project/ui/YearGridView.kt rename to core/src/main/kotlin/plus/rua/project/ui/YearGridView.kt diff --git a/shared/src/test/AGENTS.md b/core/src/test/AGENTS.md similarity index 100% rename from shared/src/test/AGENTS.md rename to core/src/test/AGENTS.md diff --git a/shared/src/test/kotlin/plus/rua/project/AGENTS.md b/core/src/test/kotlin/plus/rua/project/AGENTS.md similarity index 100% rename from shared/src/test/kotlin/plus/rua/project/AGENTS.md rename to core/src/test/kotlin/plus/rua/project/AGENTS.md diff --git a/shared/src/test/kotlin/plus/rua/project/CalendarViewModelStateTest.kt b/core/src/test/kotlin/plus/rua/project/CalendarViewModelStateTest.kt similarity index 100% rename from shared/src/test/kotlin/plus/rua/project/CalendarViewModelStateTest.kt rename to core/src/test/kotlin/plus/rua/project/CalendarViewModelStateTest.kt diff --git a/shared/src/test/kotlin/plus/rua/project/CalendarViewModelTest.kt b/core/src/test/kotlin/plus/rua/project/CalendarViewModelTest.kt similarity index 100% rename from shared/src/test/kotlin/plus/rua/project/CalendarViewModelTest.kt rename to core/src/test/kotlin/plus/rua/project/CalendarViewModelTest.kt diff --git a/shared/src/test/kotlin/plus/rua/project/ShiftPatternTest.kt b/core/src/test/kotlin/plus/rua/project/ShiftPatternTest.kt similarity index 100% rename from shared/src/test/kotlin/plus/rua/project/ShiftPatternTest.kt rename to core/src/test/kotlin/plus/rua/project/ShiftPatternTest.kt diff --git a/shared/src/test/kotlin/plus/rua/project/ui/AGENTS.md b/core/src/test/kotlin/plus/rua/project/ui/AGENTS.md similarity index 100% rename from shared/src/test/kotlin/plus/rua/project/ui/AGENTS.md rename to core/src/test/kotlin/plus/rua/project/ui/AGENTS.md diff --git a/shared/src/test/kotlin/plus/rua/project/ui/CalendarUtilsExtraTest.kt b/core/src/test/kotlin/plus/rua/project/ui/CalendarUtilsExtraTest.kt similarity index 100% rename from shared/src/test/kotlin/plus/rua/project/ui/CalendarUtilsExtraTest.kt rename to core/src/test/kotlin/plus/rua/project/ui/CalendarUtilsExtraTest.kt diff --git a/shared/src/test/kotlin/plus/rua/project/ui/CalendarUtilsTest.kt b/core/src/test/kotlin/plus/rua/project/ui/CalendarUtilsTest.kt similarity index 100% rename from shared/src/test/kotlin/plus/rua/project/ui/CalendarUtilsTest.kt rename to core/src/test/kotlin/plus/rua/project/ui/CalendarUtilsTest.kt diff --git a/settings.gradle.kts b/settings.gradle.kts index 7727015..e0e286e 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -28,5 +28,5 @@ dependencyResolutionManagement { } } -include(":shared") -include(":androidApp") \ No newline at end of file +include(":core") +include(":app") \ No newline at end of file diff --git a/shared/src/iosMain/AGENTS.md b/shared/src/iosMain/AGENTS.md deleted file mode 100644 index 7689d81..0000000 --- a/shared/src/iosMain/AGENTS.md +++ /dev/null @@ -1,39 +0,0 @@ - - - -# iosMain - -## Purpose -iOS 平台特定实现 source set,包含 `ComposeUIViewController` 工厂和 `expect/actual` 的 iOS 端实现。 - -## Key Files - -| File | Description | -|------|-------------| -| `kotlin/plus/rua/project/MainViewController.kt` | `ComposeUIViewController` 工厂函数,iOS 应用通过此入口加载 Compose UI | -| `kotlin/plus/rua/project/ComposeTrace.ios.kt` | Trace 标记的 iOS 实现(no-op) | -| `kotlin/plus/rua/project/Platform.ios.kt` | `Platform` 接口的 iOS 实现 | - -## Subdirectories - -| Directory | Purpose | -|-----------|---------| -| `kotlin/plus/rua/project/` | iOS 平台实现源码(见 `kotlin/plus/rua/project/AGENTS.md`) | - -## For AI Agents - -### Working In This Directory -- 仅放置 `commonMain` 中 `expect` 声明的 iOS `actual` 实现 -- `MainViewController.kt` 是 iOS 侧的 Compose 入口,保持简洁 - -## Dependencies - -### Internal -- `shared/src/commonMain/kotlin/plus/rua/project/App.kt` — Compose 根界面 -- `shared/src/commonMain/kotlin/plus/rua/project/ComposeTrace.kt` — expect 声明 -- `shared/src/commonMain/kotlin/plus/rua/project/Platform.kt` — expect 声明 - -### External -- `platform.UIKit` - - diff --git a/shared/src/iosMain/kotlin/plus/rua/project/AGENTS.md b/shared/src/iosMain/kotlin/plus/rua/project/AGENTS.md deleted file mode 100644 index e47b679..0000000 --- a/shared/src/iosMain/kotlin/plus/rua/project/AGENTS.md +++ /dev/null @@ -1,27 +0,0 @@ - - - -# project - -## Purpose -iOS 平台特定实现源码目录。 - -## Key Files - -| File | Description | -|------|-------------| -| `MainViewController.kt` | `ComposeUIViewController` 工厂,iOS 应用入口 | -| `ComposeTrace.ios.kt` | Trace 标记的 iOS no-op 实现 | -| `Platform.ios.kt` | 平台接口实现 | - -## Subdirectories -无 - -## Dependencies - -### Internal -- `shared/src/commonMain/kotlin/plus/rua/project/App.kt` -- `shared/src/commonMain/kotlin/plus/rua/project/ComposeTrace.kt` -- `shared/src/commonMain/kotlin/plus/rua/project/Platform.kt` - - diff --git a/shared/src/iosMain/kotlin/plus/rua/project/ComposeTrace.ios.kt b/shared/src/iosMain/kotlin/plus/rua/project/ComposeTrace.ios.kt deleted file mode 100644 index 1a43761..0000000 --- a/shared/src/iosMain/kotlin/plus/rua/project/ComposeTrace.ios.kt +++ /dev/null @@ -1,5 +0,0 @@ -package plus.rua.project - -actual fun composeTraceBeginSection(name: String) {} // iOS: no-op - -actual fun composeTraceEndSection() {} // iOS: no-op \ No newline at end of file diff --git a/shared/src/iosMain/kotlin/plus/rua/project/MainViewController.kt b/shared/src/iosMain/kotlin/plus/rua/project/MainViewController.kt deleted file mode 100644 index fa9c6e3..0000000 --- a/shared/src/iosMain/kotlin/plus/rua/project/MainViewController.kt +++ /dev/null @@ -1,5 +0,0 @@ -package plus.rua.project - -import androidx.compose.ui.window.ComposeUIViewController - -fun MainViewController() = ComposeUIViewController { App() } \ No newline at end of file diff --git a/shared/src/iosMain/kotlin/plus/rua/project/Platform.ios.kt b/shared/src/iosMain/kotlin/plus/rua/project/Platform.ios.kt deleted file mode 100644 index e30d581..0000000 --- a/shared/src/iosMain/kotlin/plus/rua/project/Platform.ios.kt +++ /dev/null @@ -1,35 +0,0 @@ -package plus.rua.project - -import androidx.compose.runtime.Composable -import platform.Foundation.NSBundle -import platform.UIKit.UIDevice - -class IOSPlatform : Platform { - override val name: String = - UIDevice.currentDevice.systemName() + " " + UIDevice.currentDevice.systemVersion -} - -actual fun getPlatform(): Platform = IOSPlatform() - -actual fun getGifUri(gifFile: String): String = "compose.resource://files/$gifFile" - -actual fun getAppIconUri(): String = "compose.resource://files/app_icon.png?v=2" - -@Composable -actual fun getAppVersion(): String { - return try { - NSBundle.mainBundle.objectForInfoDictionaryKey("CFBundleShortVersionString") as? String ?: "unknown" - } catch (_: Throwable) { - "unknown" - } -} - -@Composable -actual fun PredictiveBackHandler( - enabled: Boolean, - onProgress: (Float) -> Unit, - onBack: () -> Unit, - onCancel: () -> Unit -) { - // iOS 没有预测性返回手势,由导航栏按钮处理 -} diff --git a/shared/src/main/kotlin/plus/rua/project/App.kt b/shared/src/main/kotlin/plus/rua/project/App.kt deleted file mode 100644 index fedb1e5..0000000 --- a/shared/src/main/kotlin/plus/rua/project/App.kt +++ /dev/null @@ -1,214 +0,0 @@ -package plus.rua.project - -import androidx.compose.animation.core.Animatable -import androidx.compose.animation.core.FastOutSlowInEasing -import androidx.compose.animation.core.Spring -import androidx.compose.animation.core.spring -import androidx.compose.animation.core.tween -import androidx.compose.foundation.isSystemInDarkTheme -import androidx.compose.foundation.layout.Box -import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.foundation.shape.RoundedCornerShape -import androidx.compose.material3.MaterialTheme -import androidx.compose.material3.darkColorScheme -import androidx.compose.material3.lightColorScheme -import androidx.compose.runtime.Composable -import androidx.compose.runtime.derivedStateOf -import androidx.compose.runtime.getValue -import androidx.compose.runtime.mutableFloatStateOf -import androidx.compose.runtime.mutableStateOf -import androidx.compose.runtime.remember -import androidx.compose.runtime.rememberCoroutineScope -import androidx.compose.runtime.setValue -import androidx.compose.ui.Modifier -import androidx.compose.ui.graphics.GraphicsLayerScope -import androidx.compose.ui.graphics.graphicsLayer -import androidx.compose.ui.tooling.preview.Preview -import androidx.compose.ui.unit.dp -import kotlinx.coroutines.launch -import plus.rua.project.ui.AboutScreen -import plus.rua.project.ui.CalendarMonthView -import plus.rua.project.ui.LicensesScreen -import plus.rua.project.ui.lerp - -private enum class Screen { Main, About, Licenses } - -/** 返回手势动画:顶层页面滑出 + 淡出 + 缩小 + 圆角阴影 */ -private fun GraphicsLayerScope.applyDismissTransform(progress: Float) { - // 二次缓动:小幅手势产生更柔和的视觉变化,大幅手势仍达到完整效果 - val p = progress * progress - translationX = p * size.width * 0.5f - scaleX = 1f - p * 0.08f - scaleY = 1f - p * 0.08f - alpha = 1f - p - shadowElevation = 32.dp.toPx() * p - shape = RoundedCornerShape(28.dp * p) - clip = p > 0.01f -} - -/** 底层页面缩放:随返回进度从 baseScale 放大到 1.0 */ -private fun GraphicsLayerScope.applyRevealTransform( - progress: Float, - forwardProgress: Float, - isForwardAnimating: Boolean -) { - val p = progress * progress - val baseScale = 0.92f + 0.08f * p - val scale = if (isForwardAnimating) lerp(1f, baseScale, forwardProgress) else baseScale - scaleX = scale - scaleY = scale -} - -/** 前向导航动画:新页面从右侧滑入 */ -private fun GraphicsLayerScope.applyEnterTransform(progress: Float) { - translationX = (1f - progress) * size.width - alpha = progress -} - -/** - * 应用入口 Composable,根据系统主题切换明暗 ColorScheme 并管理页面导航。 - * - * 使用 Box 分层布局替代 AnimatedContent,支持预测性返回手势: - * - 底层页面始终组合(状态保持),缩放显现 - * - 顶层页面在手势期间平滑位移、缩放、圆角、阴影 - * - 前向导航从右侧滑入,返回导航跟手驱动 - */ -@Composable -@Preview(name = "Calendar App") -fun App() { - var currentScreen by remember { mutableStateOf(Screen.Main) } - var backProgress by remember { mutableFloatStateOf(0f) } - val scope = rememberCoroutineScope() - - val backAnimProgress = remember { Animatable(0f) } - val effectiveBackProgress by remember { - derivedStateOf { maxOf(backProgress, backAnimProgress.value) } - } - - var forwardTarget by remember { mutableStateOf(null) } - val forwardProgress = remember { Animatable(1f) } - - var isHandlingBack by remember { mutableStateOf(false) } - val handleBack: () -> Unit = lambda@{ - if (isHandlingBack) return@lambda - isHandlingBack = true - scope.launch { - backAnimProgress.snapTo(backProgress) - backProgress = 0f - backAnimProgress.animateTo( - 1f, - spring( - stiffness = Spring.StiffnessMedium, - dampingRatio = Spring.DampingRatioNoBouncy - ) - ) - currentScreen = when (currentScreen) { - Screen.About -> Screen.Main - Screen.Licenses -> Screen.About - else -> currentScreen - } - backAnimProgress.snapTo(0f) - isHandlingBack = false - } - } - - val handleCancel: () -> Unit = { - scope.launch { - backAnimProgress.snapTo(backProgress) - backProgress = 0f - backAnimProgress.animateTo(0f, spring(stiffness = Spring.StiffnessMediumLow)) - } - } - - val navigateTo: (Screen) -> Unit = { target -> - if (forwardTarget == null) { - scope.launch { - forwardTarget = target - currentScreen = target - forwardProgress.snapTo(0f) - forwardProgress.animateTo(1f, tween(350, easing = FastOutSlowInEasing)) - forwardTarget = null - } - } - } - - val colorScheme = if (isSystemInDarkTheme()) darkColorScheme() else lightColorScheme() - MaterialTheme(colorScheme = colorScheme) { - Box(modifier = Modifier.fillMaxSize()) { - // Layer 0: CalendarMonthView(始终组合以保持状态) - CalendarMonthView( - modifier = Modifier.graphicsLayer { - if (currentScreen != Screen.Main) { - applyRevealTransform( - effectiveBackProgress, - forwardProgress.value, - forwardTarget != null - ) - } - }, - onNavigateToAbout = { navigateTo(Screen.About) } - ) - - // Layer 1: AboutScreen(About 或 Licenses 页面时组合) - if (currentScreen == Screen.About || currentScreen == Screen.Licenses) { - AboutScreen( - onBack = { - if (currentScreen == Screen.About) handleBack() - }, - onNavigateToLicenses = { - if (currentScreen == Screen.About) navigateTo(Screen.Licenses) - }, - modifier = Modifier.graphicsLayer { - when (currentScreen) { - Screen.Licenses -> applyRevealTransform( - effectiveBackProgress, - forwardProgress.value, - forwardTarget == Screen.Licenses - ) - - Screen.About -> { - val bp = effectiveBackProgress - val fp = forwardProgress.value - when { - bp > 0.001f -> applyDismissTransform(bp) - fp < 0.999f && forwardTarget == Screen.About -> applyEnterTransform( - fp - ) - } - } - - else -> {} - } - } - ) - } - - // Layer 2: LicensesScreen(Licenses 页面时组合) - if (currentScreen == Screen.Licenses) { - LicensesScreen( - onBack = handleBack, - modifier = Modifier.graphicsLayer { - val bp = effectiveBackProgress - val fp = forwardProgress.value - when { - bp > 0.001f -> applyDismissTransform(bp) - fp < 0.999f && forwardTarget == Screen.Licenses -> applyEnterTransform( - fp - ) - } - } - ) - } - - // 预测性返回手势 - if (currentScreen != Screen.Main) { - PredictiveBackHandler( - enabled = !backAnimProgress.isRunning && !isHandlingBack && forwardTarget == null, - onProgress = { backProgress = it }, - onBack = handleBack, - onCancel = handleCancel - ) - } - } - } -}