73 Commits

Author SHA1 Message Date
14dd902327 🔥 Remove viewModelDefinition and update Koin dependencies
- Removed the custom `viewModelDefinition` function in favor of Koin's
built-in `viewModelOf`.
- Updated the Koin dependencies to use `koin-compose-viewmodel` instead
of `koin-compose`.
- Removed `libraries/di` module.
- Updated all modules using `viewModelDefinition` to use `viewModelOf`.
- Removed all module dependencies for the removed module.
2025-03-29 14:23:13 -04:00
f7b8957847 🔄 Replace Moko ViewModel with AndroidX ViewModel
Replaced the `moko-mvvm` library with `androidx.lifecycle.ViewMode
l` to handle ViewModel logic. This change updates the ViewModel
definitions across Android, iOS, Desktop, and common modules. The
`moko-mvvm` dependency was removed from the `libs.versions.toml`, and
the project dependencies were updated accordingly. Also updated all
ViewModels and its definitions to use the new `androidx.lifecycle
.ViewModel` instead of the `dev.icerock.moko.mvvm.viewmodel.ViewModel`
2025-03-29 14:23:01 -04:00
338e637cb5 🌺 Spring cleaning
Several code improvements, lint suggestion, unused code removal and more
2025-03-29 12:43:15 -04:00
7a89bacc28 🔮 Rename "isCompact" to "isSinglePane" for clarity
The function was renamed from "isCompact" to "isSinglePane" to make it
clear its usage.
2025-03-18 12:50:16 -04:00
bf501af31e 🎴 Add support for compact mode in AlkaaToolbar
Introduced a new `isCompact` flag to the `AlkaaToolbar` component to
dynamically determine the navigation icon style (back or close). Updated
various screens and navigation graphs to pass the appropriate
`isCompact` value. This change improves UI adaptability across
different layouts.
2025-03-16 17:33:35 -04:00
58b7013a8c 📽️ Update Kotlin DSL with new extensions
The extensions from KmpExtensions were replaced by the new additions in
the latest KMP plugin.
2024-05-25 19:29:41 -04:00
d4f3395fd0 🔄 Replace Moko Resources with Compose Resources
Moko Resources is great, but the simplicity and first-party support in
Compose got me.
2024-05-25 13:36:42 -04:00
2a56098688 2️⃣ Update Alkaa to use K2
Alkaa updated to use the second version of the Kotlin Compiler. Compose
was also updated to use the one from the Kotlin repository.
2024-05-19 20:03:14 -04:00
b5614460d7 Adapt Tracker to by dynamic on Android and static on iOS
Using some platform-specific dependencies and abstracting the core logic
of the Tracker feature, the following behavior was implemented:

- On Android, the feature still a Dynamic Feature that can be downloaded
by the users
- On iOS, the feature is static and will always be available for the
users
2023-10-12 09:07:09 -04:00
83aa9bd6b2 Fix unit tests
Fix the broken unit tests after all the changes for the KMP modules.
Some parts will remain commented/disabled until the full migration is
done.
2023-10-12 09:07:09 -04:00
2b7d778978 ♻️ Update modules that depends on Design System
Since the Design System APIs are no longer using `@StringRes`, all the
modules that depends on it were updated to use the actual String. The DI
was also added to provide the platform specific theme implementation.
2023-08-25 09:33:36 -04:00
fed5cb6f3d Fix the unit tests
All the domain tests are working fine again all the Calendar/DateTime
migration
2023-08-15 21:10:55 -04:00
b46839b2f2 🚚 Rename the shared to domain
Small back-and-forth to convert the `shared` to the old `domain`. Now
that everything is set, the module was updated to the original name.
2023-08-15 21:10:55 -04:00
1084c134ff ♻️ Replace all the references from domain to shared
Moved the dependencies from the Kotlin-only to the Kotlin Multiplatform
Mobile one
2023-08-15 21:10:55 -04:00
e5741ebce3 🚨 Fix build warnings (#530)
Fix the `packagingOptions` and `textFieldColors` deprecations
2023-08-01 15:54:48 -04:00
6a81b111b7 🔧 Move namespace from Manifest to build.gradle (#446)
Google is deprecating the AndroidManifest declaration for namespace.
Thanks to the AGP Upgrade Assistant, it was just a matter of running a
script.
2023-03-30 13:54:52 -04:00
83fac8cf83 Update dependency com.pinterest:ktlint to v0.48.0 (#396)
* Update dependency com.pinterest:ktlint to v0.48.0

* 🚨 Add trailing comma

Finally this rule is in place for Ktlint. Command was executed to add
trailing comma in every single Kotlin file.

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Igor Escodro <escodro@outlook.com>
2022-12-16 10:26:54 -05:00
dfbeb03b9a 🚚 Update test module packages
Before this change, everything was just thrown in the same package. Now
it's much more organized.
2022-11-21 17:45:15 -05:00
7815dd6a71 ♻️ Update all the KotlinX dependencies under the same tree
Version Catalog updated since now we have 4 KotlinX dependencies
2022-11-18 10:23:46 -05:00
1bbb0b2352 🚨 Fix the Compose rules
It was much easier than I thought. Most of the changes are simply using
`ImmutableList` instead of `List` and handling the `Modifier` correctly.
2022-11-18 10:15:16 -05:00
878922b482 Revert "💩 Add a workaround for Instrumented Tests on Android 12"
This reverts commit 076338fbec9cd6ffaccf4bf20f099d1058131f57.
2022-10-12 13:40:18 -04:00
ffff11cbfe 💄 More UI changes
Let's make it prettier!
2022-09-27 09:54:07 -04:00
2d7663f393 🔀 Fix merge and make it run with all Material You
It's time to make it finally run, updating all the references to
Material You (M3)! 🎉
2022-09-26 14:28:24 -04:00
baad1168ce Update compose to v1.2.1 (#307)
* ⬆️ Update compile and target versions

Since the new Compose 1.2 requires at least compile version at API 32
this updated was required.

* ⬆️ Update Kotlin version

Kotlin version updated to 1.7.0 in order to work properly with Compose
1.2

* ⬆️ Update Compose version to 1.2

Update Jetpack Compose version to 1.2. Also the versions was split from
regular Compose dependencies and Compiler one since they seem to not
match for the patch version.

* ⬆️ Update Accompanist

Even though it seems that the version 0.23.1 is working fine Compose
1.2, it's a better idea to make sure that the versions are matching.
2022-08-11 17:25:34 -04:00
e44d0039c7 👽️ Update codebase with new Ktlint rules
Codebase updated
2022-06-20 12:18:23 -03:00
0c638e51d6 Update Coroutine Test deprecated APIs
Removing `runBlockingTest` in favor of `runTest` and also updated
the TestDispatcher to more modern ones
2022-06-17 15:48:30 -03:00
e05aaaed9b 🔧 Update All Gradle files to use JVM plugins
Now that the buildSrc no longer exists, all the references were updated
to JVM Convention Plugins.
2022-05-26 15:29:08 -03:00
93dee2dceb 💄 Update the Material components
Updated all the components from M2 to the available ones in M3
2022-05-04 14:20:57 -03:00
e4b5adf2e4 💚 Fix Detekt issues in Tracker module
New Detekt issues fixed!
2021-12-03 10:29:38 -03:00
076338fbec 💩 Add a workaround for Instrumented Tests on Android 12
The Android 12 is failing with some Compose Instrumented tests due to
the new "android:exported" requirement. This solution was found in the
Issue Tracker and posted by a Googler.

Once the final solution is developed, this could must be removed.

For more information: https://issuetracker.google.com/issues/191397778
2021-10-07 09:08:11 -03:00
c008d32346 ♻️ Update all Gradle file to KTS (#209)
All the Gradle files are now in KTS format. Also some extensions were
created in order to make the code clearer.

Groovy, groovy, bye, bye...
2021-09-10 10:42:36 -03:00
e8d7265bbf ⬆️ Enable Gradle's Type-safe Project Accessors (#208)
Enable the new feature on Gradle 7.0 and update all the projects
references form hardcoded to type-safe calls.
2021-08-31 12:58:15 -03:00
18ce320712 ♻️ General updates
General updates suggested by Inspect Code from Android Studio
2021-08-20 15:33:25 -03:00
ff0878e637 ⬆️ Upgrade Google Play Core library (#183)
Library updated due to Google Play requirement.
Minor changes made to match latest library.
2021-04-26 16:07:14 -03:00
efda120719 🚚 Rename "Theme" module to "Design system" (#169)
Since the module contains more components and logic based on how the
application look and feel should behave, I believe that is better to
name it "Design System" in order to better reflect its importance and
content.
2021-04-16 09:03:38 -03:00
6777c2fac3 Implement corner case states for Tracker screen
State for empty, error and loading states is now implemented to cover
more scenarios from this screen.
2021-04-16 09:03:37 -03:00
79e57326b3 💄 Update Graph to does not show separator if it has only one category
Graph code updated to remove the separator if there only one category to
be shown. This improves the graph look and feel.
2021-04-16 09:03:37 -03:00
faafccdb76 Add TopAppBar in Tracker screen
TopAppBar added for better look and feel and user navigation.
2021-04-16 09:03:37 -03:00
2c000af4cc Create Tracker Card Info
Card added at the bottom of the screen informing how many tasks were
completed in the last 30 days.
2021-04-16 09:03:37 -03:00
5783c82187 Create Tracker Task List
New list create to identify each category and the numbers from each one.
It works as caption as well.
2021-04-16 09:03:37 -03:00
0b4d70f486 Create the base structure for Tracker Graph
The structure, connections and a simple initial view were created to
represent the Track Graph.
2021-04-16 09:03:37 -03:00
b5d98d9f2b Create TrackerActivity
Activity created to have the Tracker feature in DFM.
2021-04-16 09:03:37 -03:00
d784a62148 🚚 Move all Tracker code to correct package
The Jetpack Navigation Compose does not have support for Dynamic Feature
Modules at the moment. At first, I added all the code inside app module
temporarily. But know I thought that I can use another Activity in the
DFM and open it by deep link while there is no native support in
Compose.
2021-04-16 09:03:37 -03:00
1be855e44c 🚚 Move Domain module from Data Module (#164)
After some time thinking about this change, I believe that makes sense
to move the Domain module from the Data Module to the project root. Once
it contains the business rule and does not store any "data", it is best
to have their own solo module. Also, I think this better adheres to the
Hexagonal Architecture model.
2021-04-16 09:03:37 -03:00
3de46de493 ⬆️ Upgrade Koin to latest Beta (#145)
Koin upgraded to latest beta version, which fixes the issue regarding
ViewModel and Jetpack Compose. In addition, the ViewModel injection
workaround was removed.
2021-04-16 09:03:37 -03:00
5ac11d57f2 🔥 Remove all tracker-related code
Let's clean up the project and removing this code will make it easier
to clean dependencies.
2021-04-16 09:03:36 -03:00
94a2f9b636 ⬆️ Upgrade Ktlint dependency
Upgrade Ktlint dependency and fixed the new errors and warning.
This upgrade is needed to correctly supports Jetpack Compose new rules.
2021-04-16 09:03:36 -03:00
ff36f3b82b ⬆️ Upgrade Detekt dependency
Upgrade Detekt dependency and fixed the new errors and warning.
This upgrade is needed to correctly supports Jetpack Compose new rules.
2021-04-16 09:03:36 -03:00
d6bb5837eb ♻️ Remove AppCompat library
AppCompat library removed from project
Library was not used anymore
2020-02-27 12:54:33 -03:00
919f6a26bb ♻️ Remove duplicate code
The dependencies were duplicated on the Tracker Gradle and the base
dynamic feature Gradle. Code updated to only add on the base one.
Also moved the test dependency to base as well.
2020-01-03 18:19:07 -03:00