From db5a346f76ffd0b2515b15516dcdda19198517ae Mon Sep 17 00:00:00 2001 From: Cutiful <113351087+Syaroful@users.noreply.github.com> Date: Sun, 4 May 2025 16:28:33 +0700 Subject: [PATCH] feat: add dynamic feature control --- agrilinkvocpro/.idea/.name | 2 +- agrilinkvocpro/.idea/codeStyles/Project.xml | 123 ++++++++++++++++++ .../.idea/codeStyles/codeStyleConfig.xml | 5 + .../.idea/deploymentTargetSelector.xml | 3 + agrilinkvocpro/.idea/gradle.xml | 1 + agrilinkvocpro/app/build.gradle.kts | 19 ++- agrilinkvocpro/app/google-services.json | 30 +++++ .../ExampleInstrumentedTest.kt | 4 +- .../app/src/main/AndroidManifest.xml | 4 +- .../syaroful/agrilinkvocpro/MainActivity.kt | 75 +++++++++++ .../core/components/AppButton.kt | 52 ++++++++ .../core/components/AppPasswordField.kt | 90 +++++++++++++ .../core/components/AppTextField.kt | 82 ++++++++++++ .../core/components/MenuItemButton.kt | 63 +++++++++ .../core/components/TextTheme.kt | 79 +++++++++++ .../agrilinkvocpro/ui/pages/ControlScreen.kt | 53 ++++++++ .../agrilinkvocpro/ui/pages/HomeScreen.kt | 107 +++++++++++++++ .../agrilinkvocpro/ui/pages/LoginScreen.kt | 101 ++++++++++++++ .../ui/theme/Color.kt | 9 +- .../ui/theme/Theme.kt | 5 +- .../ui/theme/Type.kt | 2 +- .../viewModel/ControlViewModel.kt | 58 +++++++++ .../syaroful/agrlinkvocpro/MainActivity.kt | 47 ------- .../commodity_price_prediction_icon.png | Bin 0 -> 565 bytes .../res/drawable/control_actuator_icon.png | Bin 0 -> 1392 bytes .../main/res/drawable/green_house_image.png | Bin 0 -> 533802 bytes .../main/res/drawable/greenhouse_banner.png | Bin 0 -> 193660 bytes .../main/res/drawable/growth_recipe_icon.png | Bin 0 -> 732 bytes .../src/main/res/drawable/ic_invisible.png | Bin 0 -> 711 bytes .../app/src/main/res/drawable/ic_lock.png | Bin 0 -> 909 bytes .../app/src/main/res/drawable/ic_visible.png | Bin 0 -> 974 bytes .../app/src/main/res/drawable/icon_email.png | Bin 0 -> 638 bytes .../app/src/main/res/drawable/leaf_icon.png | Bin 0 -> 536 bytes .../drawable/plant_disease_detection_icon.png | Bin 0 -> 975 bytes .../src/main/res/drawable/selenoid_icon.png | Bin 0 -> 437 bytes .../app/src/main/res/values/strings.xml | 3 +- .../app/src/main/res/values/themes.xml | 2 +- .../ExampleUnitTest.kt | 2 +- agrilinkvocpro/build.gradle.kts | 2 + agrilinkvocpro/control_feature/.gitignore | 1 + .../control_feature/build.gradle.kts | 38 ++++++ .../ExampleInstrumentedTest.kt | 24 ++++ .../src/main/AndroidManifest.xml | 13 ++ .../control_feature/ExampleUnitTest.kt | 17 +++ agrilinkvocpro/gradle/libs.versions.toml | 8 +- .../gradle/wrapper/gradle-wrapper.properties | 2 +- agrilinkvocpro/settings.gradle.kts | 3 +- ...oposal Skripsi - Muhamad Syaroful Anam.pdf | Bin 764028 -> 2152256 bytes 48 files changed, 1061 insertions(+), 68 deletions(-) create mode 100644 agrilinkvocpro/.idea/codeStyles/Project.xml create mode 100644 agrilinkvocpro/.idea/codeStyles/codeStyleConfig.xml create mode 100644 agrilinkvocpro/app/google-services.json rename agrilinkvocpro/app/src/androidTest/java/com/syaroful/{agrlinkvocpro => agrilinkvocpro}/ExampleInstrumentedTest.kt (83%) create mode 100644 agrilinkvocpro/app/src/main/java/com/syaroful/agrilinkvocpro/MainActivity.kt create mode 100644 agrilinkvocpro/app/src/main/java/com/syaroful/agrilinkvocpro/core/components/AppButton.kt create mode 100644 agrilinkvocpro/app/src/main/java/com/syaroful/agrilinkvocpro/core/components/AppPasswordField.kt create mode 100644 agrilinkvocpro/app/src/main/java/com/syaroful/agrilinkvocpro/core/components/AppTextField.kt create mode 100644 agrilinkvocpro/app/src/main/java/com/syaroful/agrilinkvocpro/core/components/MenuItemButton.kt create mode 100644 agrilinkvocpro/app/src/main/java/com/syaroful/agrilinkvocpro/core/components/TextTheme.kt create mode 100644 agrilinkvocpro/app/src/main/java/com/syaroful/agrilinkvocpro/ui/pages/ControlScreen.kt create mode 100644 agrilinkvocpro/app/src/main/java/com/syaroful/agrilinkvocpro/ui/pages/HomeScreen.kt create mode 100644 agrilinkvocpro/app/src/main/java/com/syaroful/agrilinkvocpro/ui/pages/LoginScreen.kt rename agrilinkvocpro/app/src/main/java/com/syaroful/{agrlinkvocpro => agrilinkvocpro}/ui/theme/Color.kt (54%) rename agrilinkvocpro/app/src/main/java/com/syaroful/{agrlinkvocpro => agrilinkvocpro}/ui/theme/Theme.kt (94%) rename agrilinkvocpro/app/src/main/java/com/syaroful/{agrlinkvocpro => agrilinkvocpro}/ui/theme/Type.kt (95%) create mode 100644 agrilinkvocpro/app/src/main/java/com/syaroful/agrilinkvocpro/viewModel/ControlViewModel.kt delete mode 100644 agrilinkvocpro/app/src/main/java/com/syaroful/agrlinkvocpro/MainActivity.kt create mode 100644 agrilinkvocpro/app/src/main/res/drawable/commodity_price_prediction_icon.png create mode 100644 agrilinkvocpro/app/src/main/res/drawable/control_actuator_icon.png create mode 100644 agrilinkvocpro/app/src/main/res/drawable/green_house_image.png create mode 100644 agrilinkvocpro/app/src/main/res/drawable/greenhouse_banner.png create mode 100644 agrilinkvocpro/app/src/main/res/drawable/growth_recipe_icon.png create mode 100644 agrilinkvocpro/app/src/main/res/drawable/ic_invisible.png create mode 100644 agrilinkvocpro/app/src/main/res/drawable/ic_lock.png create mode 100644 agrilinkvocpro/app/src/main/res/drawable/ic_visible.png create mode 100644 agrilinkvocpro/app/src/main/res/drawable/icon_email.png create mode 100644 agrilinkvocpro/app/src/main/res/drawable/leaf_icon.png create mode 100644 agrilinkvocpro/app/src/main/res/drawable/plant_disease_detection_icon.png create mode 100644 agrilinkvocpro/app/src/main/res/drawable/selenoid_icon.png rename agrilinkvocpro/app/src/test/java/com/syaroful/{agrlinkvocpro => agrilinkvocpro}/ExampleUnitTest.kt (89%) create mode 100644 agrilinkvocpro/control_feature/.gitignore create mode 100644 agrilinkvocpro/control_feature/build.gradle.kts create mode 100644 agrilinkvocpro/control_feature/src/androidTest/java/com/syaroful/control_feature/ExampleInstrumentedTest.kt create mode 100644 agrilinkvocpro/control_feature/src/main/AndroidManifest.xml create mode 100644 agrilinkvocpro/control_feature/src/test/java/com/syaroful/control_feature/ExampleUnitTest.kt diff --git a/agrilinkvocpro/.idea/.name b/agrilinkvocpro/.idea/.name index f53b54b..e7a77f7 100644 --- a/agrilinkvocpro/.idea/.name +++ b/agrilinkvocpro/.idea/.name @@ -1 +1 @@ -Agrlink Vocpro \ No newline at end of file +Agrilink Vocpro \ No newline at end of file diff --git a/agrilinkvocpro/.idea/codeStyles/Project.xml b/agrilinkvocpro/.idea/codeStyles/Project.xml new file mode 100644 index 0000000..7643783 --- /dev/null +++ b/agrilinkvocpro/.idea/codeStyles/Project.xml @@ -0,0 +1,123 @@ + + + + + + + + + + \ No newline at end of file diff --git a/agrilinkvocpro/.idea/codeStyles/codeStyleConfig.xml b/agrilinkvocpro/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..79ee123 --- /dev/null +++ b/agrilinkvocpro/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/agrilinkvocpro/.idea/deploymentTargetSelector.xml b/agrilinkvocpro/.idea/deploymentTargetSelector.xml index b268ef3..fc8303f 100644 --- a/agrilinkvocpro/.idea/deploymentTargetSelector.xml +++ b/agrilinkvocpro/.idea/deploymentTargetSelector.xml @@ -5,6 +5,9 @@ + + \ No newline at end of file diff --git a/agrilinkvocpro/.idea/gradle.xml b/agrilinkvocpro/.idea/gradle.xml index 7b3006b..975c81f 100644 --- a/agrilinkvocpro/.idea/gradle.xml +++ b/agrilinkvocpro/.idea/gradle.xml @@ -11,6 +11,7 @@