From 80a82de945f6797e06163cd97c611c1dfc40a046 Mon Sep 17 00:00:00 2001 From: Don Turner Date: Wed, 6 Mar 2024 22:31:21 +0000 Subject: [PATCH 01/39] Update module dependency graphs and add script to create them Change-Id: I7b2ae264ec84491c847a44869934e2f238564c31 --- app-nia-catalog/README.md | 2 +- app/README.md | 2 +- build.gradle.kts | 14 +- core/analytics/README.md | 3 + core/common/README.md | 2 +- core/data-test/README.md | 2 +- core/data/README.md | 2 +- core/database/README.md | 2 +- core/datastore-proto/README.md | 3 + core/datastore-test/README.md | 2 +- core/datastore/README.md | 2 +- core/designsystem/README.md | 2 +- core/domain/README.md | 3 + core/model/README.md | 2 +- core/network/README.md | 2 +- core/notifications/README.md | 3 + core/testing/README.md | 2 +- core/ui/README.md | 2 +- docs/images/graphs/dep_graph_app.svg | 481 ++++++++++++++++++ .../graphs/dep_graph_app_nia_catalog.svg | 73 +++ .../graphs/dep_graph_core_analytics.svg | 19 + docs/images/graphs/dep_graph_core_common.svg | 19 + docs/images/graphs/dep_graph_core_data.svg | 151 ++++++ .../graphs/dep_graph_core_data_test.svg | 163 ++++++ .../images/graphs/dep_graph_core_database.svg | 31 ++ .../graphs/dep_graph_core_datastore.svg | 55 ++ .../graphs/dep_graph_core_datastore_proto.svg | 19 + .../graphs/dep_graph_core_datastore_test.svg | 73 +++ .../graphs/dep_graph_core_designsystem.svg | 19 + docs/images/graphs/dep_graph_core_domain.svg | 169 ++++++ docs/images/graphs/dep_graph_core_model.svg | 19 + docs/images/graphs/dep_graph_core_network.svg | 43 ++ .../graphs/dep_graph_core_notifications.svg | 43 ++ docs/images/graphs/dep_graph_core_testing.svg | 199 ++++++++ docs/images/graphs/dep_graph_core_ui.svg | 55 ++ .../graphs/dep_graph_feature_bookmarks.svg | 205 ++++++++ .../graphs/dep_graph_feature_foryou.svg | 229 +++++++++ .../graphs/dep_graph_feature_interests.svg | 229 +++++++++ .../graphs/dep_graph_feature_search.svg | 331 ++++++++++++ .../graphs/dep_graph_feature_settings.svg | 205 ++++++++ .../images/graphs/dep_graph_feature_topic.svg | 205 ++++++++ .../graphs/dep_graph_sync_sync_test.svg | 187 +++++++ docs/images/graphs/dep_graph_sync_work.svg | 169 ++++++ feature/bookmarks/README.md | 2 +- feature/foryou/README.md | 2 +- feature/interests/README.md | 2 +- feature/search/README.md | 3 + feature/settings/README.md | 3 + feature/topic/README.md | 2 +- generateModuleGraphs.sh | 91 ++++ gradle/libs.versions.toml | 2 + lint/README.md | 3 - settings.gradle.kts | 1 + sync/README.md | 3 - sync/sync-test/README.md | 3 + sync/work/README.md | 3 + 56 files changed, 3539 insertions(+), 24 deletions(-) create mode 100644 core/analytics/README.md create mode 100644 core/datastore-proto/README.md create mode 100644 core/domain/README.md create mode 100644 core/notifications/README.md create mode 100644 docs/images/graphs/dep_graph_app.svg create mode 100644 docs/images/graphs/dep_graph_app_nia_catalog.svg create mode 100644 docs/images/graphs/dep_graph_core_analytics.svg create mode 100644 docs/images/graphs/dep_graph_core_common.svg create mode 100644 docs/images/graphs/dep_graph_core_data.svg create mode 100644 docs/images/graphs/dep_graph_core_data_test.svg create mode 100644 docs/images/graphs/dep_graph_core_database.svg create mode 100644 docs/images/graphs/dep_graph_core_datastore.svg create mode 100644 docs/images/graphs/dep_graph_core_datastore_proto.svg create mode 100644 docs/images/graphs/dep_graph_core_datastore_test.svg create mode 100644 docs/images/graphs/dep_graph_core_designsystem.svg create mode 100644 docs/images/graphs/dep_graph_core_domain.svg create mode 100644 docs/images/graphs/dep_graph_core_model.svg create mode 100644 docs/images/graphs/dep_graph_core_network.svg create mode 100644 docs/images/graphs/dep_graph_core_notifications.svg create mode 100644 docs/images/graphs/dep_graph_core_testing.svg create mode 100644 docs/images/graphs/dep_graph_core_ui.svg create mode 100644 docs/images/graphs/dep_graph_feature_bookmarks.svg create mode 100644 docs/images/graphs/dep_graph_feature_foryou.svg create mode 100644 docs/images/graphs/dep_graph_feature_interests.svg create mode 100644 docs/images/graphs/dep_graph_feature_search.svg create mode 100644 docs/images/graphs/dep_graph_feature_settings.svg create mode 100644 docs/images/graphs/dep_graph_feature_topic.svg create mode 100644 docs/images/graphs/dep_graph_sync_sync_test.svg create mode 100644 docs/images/graphs/dep_graph_sync_work.svg create mode 100644 feature/search/README.md create mode 100644 feature/settings/README.md create mode 100755 generateModuleGraphs.sh delete mode 100644 lint/README.md delete mode 100644 sync/README.md create mode 100644 sync/sync-test/README.md create mode 100644 sync/work/README.md diff --git a/app-nia-catalog/README.md b/app-nia-catalog/README.md index edbbb5e46..724f1effe 100644 --- a/app-nia-catalog/README.md +++ b/app-nia-catalog/README.md @@ -1,3 +1,3 @@ # :app-nia-catalog module -![Dependency graph](../docs/images/graphs/dep_graph_app_nia_catalog.png) +![Dependency graph](../docs/images/graphs/dep_graph_app_nia_catalog.svg) diff --git a/app/README.md b/app/README.md index 9f151c245..bbadc7330 100644 --- a/app/README.md +++ b/app/README.md @@ -1,3 +1,3 @@ # :app module -![Dependency graph](../docs/images/graphs/dep_graph_app.png) +![Dependency graph](../docs/images/graphs/dep_graph_app.svg) diff --git a/build.gradle.kts b/build.gradle.kts index 6fe9b829e..1790cd202 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -27,9 +27,10 @@ buildscript { exclude(group = "com.google.protobuf") } } + } -// Lists all plugins used throughout the project without applying them. +// Lists all plugins used throughout the project plugins { alias(libs.plugins.android.application) apply false alias(libs.plugins.android.library) apply false @@ -46,4 +47,15 @@ plugins { alias(libs.plugins.roborazzi) apply false alias(libs.plugins.secrets) apply false alias(libs.plugins.room) apply false + alias(libs.plugins.module.graph) apply true // Plugin applied to allow module graph generation } + +// Task to print all the module paths in the project e.g. :core:data +// Used by module graph generator script +tasks.register("printModulePaths") { + subprojects { + if (subprojects.size == 0) { + println(this.path) + } + } +} \ No newline at end of file diff --git a/core/analytics/README.md b/core/analytics/README.md new file mode 100644 index 000000000..c451cc838 --- /dev/null +++ b/core/analytics/README.md @@ -0,0 +1,3 @@ +# :core:analytics module + +![Dependency graph](../../docs/images/graphs/dep_graph_core_analytics.svg) diff --git a/core/common/README.md b/core/common/README.md index ade22c076..2fbc5a329 100644 --- a/core/common/README.md +++ b/core/common/README.md @@ -1,3 +1,3 @@ # :core:common module -![Dependency graph](../../docs/images/graphs/dep_graph_core_common.png) +![Dependency graph](../../docs/images/graphs/dep_graph_core_common.svg) diff --git a/core/data-test/README.md b/core/data-test/README.md index 4f623e629..43804eeec 100644 --- a/core/data-test/README.md +++ b/core/data-test/README.md @@ -1,3 +1,3 @@ # :core:data-test module -![Dependency graph](../../docs/images/graphs/dep_graph_core_data_test.png) +![Dependency graph](../../docs/images/graphs/dep_graph_core_data_test.svg) diff --git a/core/data/README.md b/core/data/README.md index 905d74615..a5a05870c 100644 --- a/core/data/README.md +++ b/core/data/README.md @@ -1,3 +1,3 @@ # :core:data module -![Dependency graph](../../docs/images/graphs/dep_graph_core_data.png) +![Dependency graph](../../docs/images/graphs/dep_graph_core_data.svg) diff --git a/core/database/README.md b/core/database/README.md index 5cf339aed..524cb5c48 100644 --- a/core/database/README.md +++ b/core/database/README.md @@ -1,3 +1,3 @@ # :core:database module -![Dependency graph](../../docs/images/graphs/dep_graph_core_database.png) +![Dependency graph](../../docs/images/graphs/dep_graph_core_database.svg) diff --git a/core/datastore-proto/README.md b/core/datastore-proto/README.md new file mode 100644 index 000000000..0b115b981 --- /dev/null +++ b/core/datastore-proto/README.md @@ -0,0 +1,3 @@ +# :core:datastore-proto module + +![Dependency graph](../../docs/images/graphs/dep_graph_core_datastore_proto.svg) diff --git a/core/datastore-test/README.md b/core/datastore-test/README.md index 45cc51a48..f59e9353d 100644 --- a/core/datastore-test/README.md +++ b/core/datastore-test/README.md @@ -1,3 +1,3 @@ # :core:datastore-test module -![Dependency graph](../../docs/images/graphs/dep_graph_core_datastore_test.png) +![Dependency graph](../../docs/images/graphs/dep_graph_core_datastore_test.svg) diff --git a/core/datastore/README.md b/core/datastore/README.md index 56699a483..e05e2ff72 100644 --- a/core/datastore/README.md +++ b/core/datastore/README.md @@ -1,3 +1,3 @@ # :core:datastore module -![Dependency graph](../../docs/images/graphs/dep_graph_core_datastore.png) +![Dependency graph](../../docs/images/graphs/dep_graph_core_datastore.svg) diff --git a/core/designsystem/README.md b/core/designsystem/README.md index 52a793821..59f8cf803 100644 --- a/core/designsystem/README.md +++ b/core/designsystem/README.md @@ -1,3 +1,3 @@ # :core:designsystem module -![Dependency graph](../../docs/images/graphs/dep_graph_core_designsystem.png) +![Dependency graph](../../docs/images/graphs/dep_graph_core_designsystem.svg) diff --git a/core/domain/README.md b/core/domain/README.md new file mode 100644 index 000000000..f86422435 --- /dev/null +++ b/core/domain/README.md @@ -0,0 +1,3 @@ +# :core:domain module + +![Dependency graph](../../docs/images/graphs/dep_graph_core_domain.svg) diff --git a/core/model/README.md b/core/model/README.md index 5279064f2..c740370ac 100644 --- a/core/model/README.md +++ b/core/model/README.md @@ -1,3 +1,3 @@ # :core:model module -![Dependency graph](../../docs/images/graphs/dep_graph_core_model.png) +![Dependency graph](../../docs/images/graphs/dep_graph_core_model.svg) diff --git a/core/network/README.md b/core/network/README.md index cfd9fd369..4106f0dde 100644 --- a/core/network/README.md +++ b/core/network/README.md @@ -1,3 +1,3 @@ # :core:network module -![Dependency graph](../../docs/images/graphs/dep_graph_core_network.png) +![Dependency graph](../../docs/images/graphs/dep_graph_core_network.svg) diff --git a/core/notifications/README.md b/core/notifications/README.md new file mode 100644 index 000000000..7d509913f --- /dev/null +++ b/core/notifications/README.md @@ -0,0 +1,3 @@ +# :core:notifications module + +![Dependency graph](../../docs/images/graphs/dep_graph_core_notifications.svg) diff --git a/core/testing/README.md b/core/testing/README.md index 8eea64ac9..a7d40abcd 100644 --- a/core/testing/README.md +++ b/core/testing/README.md @@ -1,3 +1,3 @@ # :core:testing module -![Dependency graph](../../docs/images/graphs/dep_graph_core_testing.png) +![Dependency graph](../../docs/images/graphs/dep_graph_core_testing.svg) diff --git a/core/ui/README.md b/core/ui/README.md index 88c3561f1..e41b50bd5 100644 --- a/core/ui/README.md +++ b/core/ui/README.md @@ -1,3 +1,3 @@ # :core:ui module -![Dependency graph](../../docs/images/graphs/dep_graph_core_ui.png) +![Dependency graph](../../docs/images/graphs/dep_graph_core_ui.svg) diff --git a/docs/images/graphs/dep_graph_app.svg b/docs/images/graphs/dep_graph_app.svg new file mode 100644 index 000000000..f305eff13 --- /dev/null +++ b/docs/images/graphs/dep_graph_app.svg @@ -0,0 +1,481 @@ + + + + + + +G + + + +:app + +:app + + + +:feature:interests + +:feature:interests + + + +:app->:feature:interests + + + + + +:feature:foryou + +:feature:foryou + + + +:app->:feature:foryou + + + + + +:feature:bookmarks + +:feature:bookmarks + + + +:app->:feature:bookmarks + + + + + +:feature:topic + +:feature:topic + + + +:app->:feature:topic + + + + + +:feature:search + +:feature:search + + + +:app->:feature:search + + + + + +:feature:settings + +:feature:settings + + + +:app->:feature:settings + + + + + +:core:common + +:core:common + + + +:app->:core:common + + + + + +:core:ui + +:core:ui + + + +:app->:core:ui + + + + + +:core:designsystem + +:core:designsystem + + + +:app->:core:designsystem + + + + + +:core:data + +:core:data + + + +:app->:core:data + + + + + +:core:model + +:core:model + + + +:app->:core:model + + + + + +:core:analytics + +:core:analytics + + + +:app->:core:analytics + + + + + +:sync:work + +:sync:work + + + +:app->:sync:work + + + + + +:feature:interests->:core:ui + + + + + +:feature:interests->:core:designsystem + + + + + +:feature:interests->:core:data + + + + + +:core:domain + +:core:domain + + + +:feature:interests->:core:domain + + + + + +:feature:foryou->:core:ui + + + + + +:feature:foryou->:core:designsystem + + + + + +:feature:foryou->:core:data + + + + + +:feature:foryou->:core:domain + + + + + +:feature:bookmarks->:core:ui + + + + + +:feature:bookmarks->:core:designsystem + + + + + +:feature:bookmarks->:core:data + + + + + +:feature:topic->:core:ui + + + + + +:feature:topic->:core:designsystem + + + + + +:feature:topic->:core:data + + + + + +:feature:search->:feature:interests + + + + + +:feature:search->:feature:foryou + + + + + +:feature:search->:feature:bookmarks + + + + + +:feature:search->:core:ui + + + + + +:feature:search->:core:designsystem + + + + + +:feature:search->:core:data + + + + + +:feature:search->:core:domain + + + + + +:feature:settings->:core:ui + + + + + +:feature:settings->:core:designsystem + + + + + +:feature:settings->:core:data + + + + + +:core:ui->:core:designsystem + + + + + +:core:ui->:core:model + + + + + +:core:ui->:core:analytics + + + + + +:core:data->:core:common + + + + + +:core:data->:core:analytics + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:notifications + +:core:notifications + + + +:core:data->:core:notifications + + + + + +:sync:work->:core:data + + + + + +:sync:work->:core:analytics + + + + + +:core:domain->:core:data + + + + + +:core:domain->:core:model + + + + + +:core:database->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore->:core:model + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:common + + + + + +:core:network->:core:model + + + + + +:core:notifications->:core:common + + + + + +:core:notifications->:core:model + + + + + diff --git a/docs/images/graphs/dep_graph_app_nia_catalog.svg b/docs/images/graphs/dep_graph_app_nia_catalog.svg new file mode 100644 index 000000000..b58415cef --- /dev/null +++ b/docs/images/graphs/dep_graph_app_nia_catalog.svg @@ -0,0 +1,73 @@ + + + + + + +G + + + +:app-nia-catalog + +:app-nia-catalog + + + +:core:designsystem + +:core:designsystem + + + +:app-nia-catalog->:core:designsystem + + + + + +:core:ui + +:core:ui + + + +:app-nia-catalog->:core:ui + + + + + +:core:ui->:core:designsystem + + + + + +:core:analytics + +:core:analytics + + + +:core:ui->:core:analytics + + + + + +:core:model + +:core:model + + + +:core:ui->:core:model + + + + + diff --git a/docs/images/graphs/dep_graph_core_analytics.svg b/docs/images/graphs/dep_graph_core_analytics.svg new file mode 100644 index 000000000..ac21c0707 --- /dev/null +++ b/docs/images/graphs/dep_graph_core_analytics.svg @@ -0,0 +1,19 @@ + + + + + + +G + + + +:core:analytics + +:core:analytics + + + diff --git a/docs/images/graphs/dep_graph_core_common.svg b/docs/images/graphs/dep_graph_core_common.svg new file mode 100644 index 000000000..c91f33853 --- /dev/null +++ b/docs/images/graphs/dep_graph_core_common.svg @@ -0,0 +1,19 @@ + + + + + + +G + + + +:core:common + +:core:common + + + diff --git a/docs/images/graphs/dep_graph_core_data.svg b/docs/images/graphs/dep_graph_core_data.svg new file mode 100644 index 000000000..cacf03a1f --- /dev/null +++ b/docs/images/graphs/dep_graph_core_data.svg @@ -0,0 +1,151 @@ + + + + + + +G + + + +:core:data + +:core:data + + + +:core:common + +:core:common + + + +:core:data->:core:common + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:analytics + +:core:analytics + + + +:core:data->:core:analytics + + + + + +:core:notifications + +:core:notifications + + + +:core:data->:core:notifications + + + + + +:core:model + +:core:model + + + +:core:database->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore->:core:model + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:common + + + + + +:core:network->:core:model + + + + + +:core:notifications->:core:common + + + + + +:core:notifications->:core:model + + + + + diff --git a/docs/images/graphs/dep_graph_core_data_test.svg b/docs/images/graphs/dep_graph_core_data_test.svg new file mode 100644 index 000000000..162c83f10 --- /dev/null +++ b/docs/images/graphs/dep_graph_core_data_test.svg @@ -0,0 +1,163 @@ + + + + + + +G + + + +:core:data-test + +:core:data-test + + + +:core:data + +:core:data + + + +:core:data-test->:core:data + + + + + +:core:common + +:core:common + + + +:core:data->:core:common + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:analytics + +:core:analytics + + + +:core:data->:core:analytics + + + + + +:core:notifications + +:core:notifications + + + +:core:data->:core:notifications + + + + + +:core:model + +:core:model + + + +:core:database->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore->:core:model + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:common + + + + + +:core:network->:core:model + + + + + +:core:notifications->:core:common + + + + + +:core:notifications->:core:model + + + + + diff --git a/docs/images/graphs/dep_graph_core_database.svg b/docs/images/graphs/dep_graph_core_database.svg new file mode 100644 index 000000000..9e907b96f --- /dev/null +++ b/docs/images/graphs/dep_graph_core_database.svg @@ -0,0 +1,31 @@ + + + + + + +G + + + +:core:database + +:core:database + + + +:core:model + +:core:model + + + +:core:database->:core:model + + + + + diff --git a/docs/images/graphs/dep_graph_core_datastore.svg b/docs/images/graphs/dep_graph_core_datastore.svg new file mode 100644 index 000000000..cfcf78db2 --- /dev/null +++ b/docs/images/graphs/dep_graph_core_datastore.svg @@ -0,0 +1,55 @@ + + + + + + +G + + + +:core:datastore + +:core:datastore + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:model + +:core:model + + + +:core:datastore->:core:model + + + + + +:core:common + +:core:common + + + +:core:datastore->:core:common + + + + + diff --git a/docs/images/graphs/dep_graph_core_datastore_proto.svg b/docs/images/graphs/dep_graph_core_datastore_proto.svg new file mode 100644 index 000000000..d572d0ea7 --- /dev/null +++ b/docs/images/graphs/dep_graph_core_datastore_proto.svg @@ -0,0 +1,19 @@ + + + + + + +G + + + +:core:datastore-proto + +:core:datastore-proto + + + diff --git a/docs/images/graphs/dep_graph_core_datastore_test.svg b/docs/images/graphs/dep_graph_core_datastore_test.svg new file mode 100644 index 000000000..ca8d3f84b --- /dev/null +++ b/docs/images/graphs/dep_graph_core_datastore_test.svg @@ -0,0 +1,73 @@ + + + + + + +G + + + +:core:datastore-test + +:core:datastore-test + + + +:core:common + +:core:common + + + +:core:datastore-test->:core:common + + + + + +:core:datastore + +:core:datastore + + + +:core:datastore-test->:core:datastore + + + + + +:core:datastore->:core:common + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:model + +:core:model + + + +:core:datastore->:core:model + + + + + diff --git a/docs/images/graphs/dep_graph_core_designsystem.svg b/docs/images/graphs/dep_graph_core_designsystem.svg new file mode 100644 index 000000000..f46f075f0 --- /dev/null +++ b/docs/images/graphs/dep_graph_core_designsystem.svg @@ -0,0 +1,19 @@ + + + + + + +G + + + +:core:designsystem + +:core:designsystem + + + diff --git a/docs/images/graphs/dep_graph_core_domain.svg b/docs/images/graphs/dep_graph_core_domain.svg new file mode 100644 index 000000000..1c97b64e8 --- /dev/null +++ b/docs/images/graphs/dep_graph_core_domain.svg @@ -0,0 +1,169 @@ + + + + + + +G + + + +:core:domain + +:core:domain + + + +:core:data + +:core:data + + + +:core:domain->:core:data + + + + + +:core:model + +:core:model + + + +:core:domain->:core:model + + + + + +:core:common + +:core:common + + + +:core:data->:core:common + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:analytics + +:core:analytics + + + +:core:data->:core:analytics + + + + + +:core:notifications + +:core:notifications + + + +:core:data->:core:notifications + + + + + +:core:database->:core:model + + + + + +:core:datastore->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:model + + + + + +:core:network->:core:common + + + + + +:core:notifications->:core:model + + + + + +:core:notifications->:core:common + + + + + diff --git a/docs/images/graphs/dep_graph_core_model.svg b/docs/images/graphs/dep_graph_core_model.svg new file mode 100644 index 000000000..290457d6c --- /dev/null +++ b/docs/images/graphs/dep_graph_core_model.svg @@ -0,0 +1,19 @@ + + + + + + +G + + + +:core:model + +:core:model + + + diff --git a/docs/images/graphs/dep_graph_core_network.svg b/docs/images/graphs/dep_graph_core_network.svg new file mode 100644 index 000000000..ea804bcff --- /dev/null +++ b/docs/images/graphs/dep_graph_core_network.svg @@ -0,0 +1,43 @@ + + + + + + +G + + + +:core:network + +:core:network + + + +:core:common + +:core:common + + + +:core:network->:core:common + + + + + +:core:model + +:core:model + + + +:core:network->:core:model + + + + + diff --git a/docs/images/graphs/dep_graph_core_notifications.svg b/docs/images/graphs/dep_graph_core_notifications.svg new file mode 100644 index 000000000..cf25ca32e --- /dev/null +++ b/docs/images/graphs/dep_graph_core_notifications.svg @@ -0,0 +1,43 @@ + + + + + + +G + + + +:core:notifications + +:core:notifications + + + +:core:model + +:core:model + + + +:core:notifications->:core:model + + + + + +:core:common + +:core:common + + + +:core:notifications->:core:common + + + + + diff --git a/docs/images/graphs/dep_graph_core_testing.svg b/docs/images/graphs/dep_graph_core_testing.svg new file mode 100644 index 000000000..29d367e4b --- /dev/null +++ b/docs/images/graphs/dep_graph_core_testing.svg @@ -0,0 +1,199 @@ + + + + + + +G + + + +:core:testing + +:core:testing + + + +:core:analytics + +:core:analytics + + + +:core:testing->:core:analytics + + + + + +:core:data + +:core:data + + + +:core:testing->:core:data + + + + + +:core:model + +:core:model + + + +:core:testing->:core:model + + + + + +:core:notifications + +:core:notifications + + + +:core:testing->:core:notifications + + + + + +:core:common + +:core:common + + + +:core:testing->:core:common + + + + + +:core:designsystem + +:core:designsystem + + + +:core:testing->:core:designsystem + + + + + +:core:data->:core:analytics + + + + + +:core:data->:core:notifications + + + + + +:core:data->:core:common + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:notifications->:core:model + + + + + +:core:notifications->:core:common + + + + + +:core:database->:core:model + + + + + +:core:datastore->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:model + + + + + +:core:network->:core:common + + + + + diff --git a/docs/images/graphs/dep_graph_core_ui.svg b/docs/images/graphs/dep_graph_core_ui.svg new file mode 100644 index 000000000..2eba46866 --- /dev/null +++ b/docs/images/graphs/dep_graph_core_ui.svg @@ -0,0 +1,55 @@ + + + + + + +G + + + +:core:ui + +:core:ui + + + +:core:analytics + +:core:analytics + + + +:core:ui->:core:analytics + + + + + +:core:designsystem + +:core:designsystem + + + +:core:ui->:core:designsystem + + + + + +:core:model + +:core:model + + + +:core:ui->:core:model + + + + + diff --git a/docs/images/graphs/dep_graph_feature_bookmarks.svg b/docs/images/graphs/dep_graph_feature_bookmarks.svg new file mode 100644 index 000000000..cfbb86412 --- /dev/null +++ b/docs/images/graphs/dep_graph_feature_bookmarks.svg @@ -0,0 +1,205 @@ + + + + + + +G + + + +:feature:bookmarks + +:feature:bookmarks + + + +:core:ui + +:core:ui + + + +:feature:bookmarks->:core:ui + + + + + +:core:designsystem + +:core:designsystem + + + +:feature:bookmarks->:core:designsystem + + + + + +:core:data + +:core:data + + + +:feature:bookmarks->:core:data + + + + + +:core:ui->:core:designsystem + + + + + +:core:analytics + +:core:analytics + + + +:core:ui->:core:analytics + + + + + +:core:model + +:core:model + + + +:core:ui->:core:model + + + + + +:core:data->:core:analytics + + + + + +:core:common + +:core:common + + + +:core:data->:core:common + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:notifications + +:core:notifications + + + +:core:data->:core:notifications + + + + + +:core:database->:core:model + + + + + +:core:datastore->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:model + + + + + +:core:network->:core:common + + + + + +:core:notifications->:core:model + + + + + +:core:notifications->:core:common + + + + + diff --git a/docs/images/graphs/dep_graph_feature_foryou.svg b/docs/images/graphs/dep_graph_feature_foryou.svg new file mode 100644 index 000000000..e196bc7da --- /dev/null +++ b/docs/images/graphs/dep_graph_feature_foryou.svg @@ -0,0 +1,229 @@ + + + + + + +G + + + +:feature:foryou + +:feature:foryou + + + +:core:ui + +:core:ui + + + +:feature:foryou->:core:ui + + + + + +:core:designsystem + +:core:designsystem + + + +:feature:foryou->:core:designsystem + + + + + +:core:data + +:core:data + + + +:feature:foryou->:core:data + + + + + +:core:domain + +:core:domain + + + +:feature:foryou->:core:domain + + + + + +:core:ui->:core:designsystem + + + + + +:core:analytics + +:core:analytics + + + +:core:ui->:core:analytics + + + + + +:core:model + +:core:model + + + +:core:ui->:core:model + + + + + +:core:data->:core:analytics + + + + + +:core:common + +:core:common + + + +:core:data->:core:common + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:notifications + +:core:notifications + + + +:core:data->:core:notifications + + + + + +:core:domain->:core:data + + + + + +:core:domain->:core:model + + + + + +:core:database->:core:model + + + + + +:core:datastore->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:model + + + + + +:core:network->:core:common + + + + + +:core:notifications->:core:model + + + + + +:core:notifications->:core:common + + + + + diff --git a/docs/images/graphs/dep_graph_feature_interests.svg b/docs/images/graphs/dep_graph_feature_interests.svg new file mode 100644 index 000000000..3728cb4f6 --- /dev/null +++ b/docs/images/graphs/dep_graph_feature_interests.svg @@ -0,0 +1,229 @@ + + + + + + +G + + + +:feature:interests + +:feature:interests + + + +:core:ui + +:core:ui + + + +:feature:interests->:core:ui + + + + + +:core:designsystem + +:core:designsystem + + + +:feature:interests->:core:designsystem + + + + + +:core:data + +:core:data + + + +:feature:interests->:core:data + + + + + +:core:domain + +:core:domain + + + +:feature:interests->:core:domain + + + + + +:core:ui->:core:designsystem + + + + + +:core:analytics + +:core:analytics + + + +:core:ui->:core:analytics + + + + + +:core:model + +:core:model + + + +:core:ui->:core:model + + + + + +:core:data->:core:analytics + + + + + +:core:common + +:core:common + + + +:core:data->:core:common + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:notifications + +:core:notifications + + + +:core:data->:core:notifications + + + + + +:core:domain->:core:data + + + + + +:core:domain->:core:model + + + + + +:core:database->:core:model + + + + + +:core:datastore->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:model + + + + + +:core:network->:core:common + + + + + +:core:notifications->:core:model + + + + + +:core:notifications->:core:common + + + + + diff --git a/docs/images/graphs/dep_graph_feature_search.svg b/docs/images/graphs/dep_graph_feature_search.svg new file mode 100644 index 000000000..b9a3c36c4 --- /dev/null +++ b/docs/images/graphs/dep_graph_feature_search.svg @@ -0,0 +1,331 @@ + + + + + + +G + + + +:feature:search + +:feature:search + + + +:core:ui + +:core:ui + + + +:feature:search->:core:ui + + + + + +:core:designsystem + +:core:designsystem + + + +:feature:search->:core:designsystem + + + + + +:core:data + +:core:data + + + +:feature:search->:core:data + + + + + +:core:domain + +:core:domain + + + +:feature:search->:core:domain + + + + + +:feature:bookmarks + +:feature:bookmarks + + + +:feature:search->:feature:bookmarks + + + + + +:feature:foryou + +:feature:foryou + + + +:feature:search->:feature:foryou + + + + + +:feature:interests + +:feature:interests + + + +:feature:search->:feature:interests + + + + + +:core:ui->:core:designsystem + + + + + +:core:analytics + +:core:analytics + + + +:core:ui->:core:analytics + + + + + +:core:model + +:core:model + + + +:core:ui->:core:model + + + + + +:core:data->:core:analytics + + + + + +:core:common + +:core:common + + + +:core:data->:core:common + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:notifications + +:core:notifications + + + +:core:data->:core:notifications + + + + + +:core:domain->:core:data + + + + + +:core:domain->:core:model + + + + + +:feature:bookmarks->:core:ui + + + + + +:feature:bookmarks->:core:designsystem + + + + + +:feature:bookmarks->:core:data + + + + + +:feature:foryou->:core:ui + + + + + +:feature:foryou->:core:designsystem + + + + + +:feature:foryou->:core:data + + + + + +:feature:foryou->:core:domain + + + + + +:feature:interests->:core:ui + + + + + +:feature:interests->:core:designsystem + + + + + +:feature:interests->:core:data + + + + + +:feature:interests->:core:domain + + + + + +:core:database->:core:model + + + + + +:core:datastore->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:model + + + + + +:core:network->:core:common + + + + + +:core:notifications->:core:model + + + + + +:core:notifications->:core:common + + + + + diff --git a/docs/images/graphs/dep_graph_feature_settings.svg b/docs/images/graphs/dep_graph_feature_settings.svg new file mode 100644 index 000000000..93826715a --- /dev/null +++ b/docs/images/graphs/dep_graph_feature_settings.svg @@ -0,0 +1,205 @@ + + + + + + +G + + + +:feature:settings + +:feature:settings + + + +:core:ui + +:core:ui + + + +:feature:settings->:core:ui + + + + + +:core:designsystem + +:core:designsystem + + + +:feature:settings->:core:designsystem + + + + + +:core:data + +:core:data + + + +:feature:settings->:core:data + + + + + +:core:ui->:core:designsystem + + + + + +:core:analytics + +:core:analytics + + + +:core:ui->:core:analytics + + + + + +:core:model + +:core:model + + + +:core:ui->:core:model + + + + + +:core:data->:core:analytics + + + + + +:core:common + +:core:common + + + +:core:data->:core:common + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:notifications + +:core:notifications + + + +:core:data->:core:notifications + + + + + +:core:database->:core:model + + + + + +:core:datastore->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:model + + + + + +:core:network->:core:common + + + + + +:core:notifications->:core:model + + + + + +:core:notifications->:core:common + + + + + diff --git a/docs/images/graphs/dep_graph_feature_topic.svg b/docs/images/graphs/dep_graph_feature_topic.svg new file mode 100644 index 000000000..cbda3c225 --- /dev/null +++ b/docs/images/graphs/dep_graph_feature_topic.svg @@ -0,0 +1,205 @@ + + + + + + +G + + + +:feature:topic + +:feature:topic + + + +:core:ui + +:core:ui + + + +:feature:topic->:core:ui + + + + + +:core:designsystem + +:core:designsystem + + + +:feature:topic->:core:designsystem + + + + + +:core:data + +:core:data + + + +:feature:topic->:core:data + + + + + +:core:ui->:core:designsystem + + + + + +:core:analytics + +:core:analytics + + + +:core:ui->:core:analytics + + + + + +:core:model + +:core:model + + + +:core:ui->:core:model + + + + + +:core:data->:core:analytics + + + + + +:core:common + +:core:common + + + +:core:data->:core:common + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:notifications + +:core:notifications + + + +:core:data->:core:notifications + + + + + +:core:database->:core:model + + + + + +:core:datastore->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:model + + + + + +:core:network->:core:common + + + + + +:core:notifications->:core:model + + + + + +:core:notifications->:core:common + + + + + diff --git a/docs/images/graphs/dep_graph_sync_sync_test.svg b/docs/images/graphs/dep_graph_sync_sync_test.svg new file mode 100644 index 000000000..1e0753393 --- /dev/null +++ b/docs/images/graphs/dep_graph_sync_sync_test.svg @@ -0,0 +1,187 @@ + + + + + + +G + + + +:sync:sync-test + +:sync:sync-test + + + +:core:data + +:core:data + + + +:sync:sync-test->:core:data + + + + + +:sync:work + +:sync:work + + + +:sync:sync-test->:sync:work + + + + + +:core:common + +:core:common + + + +:core:data->:core:common + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:analytics + +:core:analytics + + + +:core:data->:core:analytics + + + + + +:core:notifications + +:core:notifications + + + +:core:data->:core:notifications + + + + + +:sync:work->:core:data + + + + + +:sync:work->:core:analytics + + + + + +:core:model + +:core:model + + + +:core:database->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore->:core:model + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:common + + + + + +:core:network->:core:model + + + + + +:core:notifications->:core:common + + + + + +:core:notifications->:core:model + + + + + diff --git a/docs/images/graphs/dep_graph_sync_work.svg b/docs/images/graphs/dep_graph_sync_work.svg new file mode 100644 index 000000000..6901b5761 --- /dev/null +++ b/docs/images/graphs/dep_graph_sync_work.svg @@ -0,0 +1,169 @@ + + + + + + +G + + + +:sync:work + +:sync:work + + + +:core:analytics + +:core:analytics + + + +:sync:work->:core:analytics + + + + + +:core:data + +:core:data + + + +:sync:work->:core:data + + + + + +:core:data->:core:analytics + + + + + +:core:common + +:core:common + + + +:core:data->:core:common + + + + + +:core:database + +:core:database + + + +:core:data->:core:database + + + + + +:core:datastore + +:core:datastore + + + +:core:data->:core:datastore + + + + + +:core:network + +:core:network + + + +:core:data->:core:network + + + + + +:core:notifications + +:core:notifications + + + +:core:data->:core:notifications + + + + + +:core:model + +:core:model + + + +:core:database->:core:model + + + + + +:core:datastore->:core:common + + + + + +:core:datastore->:core:model + + + + + +:core:datastore-proto + +:core:datastore-proto + + + +:core:datastore->:core:datastore-proto + + + + + +:core:network->:core:common + + + + + +:core:network->:core:model + + + + + +:core:notifications->:core:common + + + + + +:core:notifications->:core:model + + + + + diff --git a/feature/bookmarks/README.md b/feature/bookmarks/README.md index e2b8c65ac..1af65fd92 100644 --- a/feature/bookmarks/README.md +++ b/feature/bookmarks/README.md @@ -1,3 +1,3 @@ # :feature:bookmarks module -![Dependency graph](../../docs/images/graphs/dep_graph_feature_bookmarks.png) +![Dependency graph](../../docs/images/graphs/dep_graph_feature_bookmarks.svg) diff --git a/feature/foryou/README.md b/feature/foryou/README.md index 1ca599859..fd864fbfa 100644 --- a/feature/foryou/README.md +++ b/feature/foryou/README.md @@ -1,3 +1,3 @@ # :feature:foryou module -![Dependency graph](../../docs/images/graphs/dep_graph_feature_foryou.png) +![Dependency graph](../../docs/images/graphs/dep_graph_feature_foryou.svg) diff --git a/feature/interests/README.md b/feature/interests/README.md index b7601ecbc..be94111d8 100644 --- a/feature/interests/README.md +++ b/feature/interests/README.md @@ -1,3 +1,3 @@ # :feature:interests module -![Dependency graph](../../docs/images/graphs/dep_graph_feature_interests.png) +![Dependency graph](../../docs/images/graphs/dep_graph_feature_interests.svg) diff --git a/feature/search/README.md b/feature/search/README.md new file mode 100644 index 000000000..c793d1543 --- /dev/null +++ b/feature/search/README.md @@ -0,0 +1,3 @@ +# :feature:search module + +![Dependency graph](../../docs/images/graphs/dep_graph_feature_search.svg) diff --git a/feature/settings/README.md b/feature/settings/README.md new file mode 100644 index 000000000..8620a2dcd --- /dev/null +++ b/feature/settings/README.md @@ -0,0 +1,3 @@ +# :feature:settings module + +![Dependency graph](../../docs/images/graphs/dep_graph_feature_settings.svg) diff --git a/feature/topic/README.md b/feature/topic/README.md index d74517e63..199a9cb55 100644 --- a/feature/topic/README.md +++ b/feature/topic/README.md @@ -1,3 +1,3 @@ # :feature:topic module -![Dependency graph](../../docs/images/graphs/dep_graph_feature_topic.png) +![Dependency graph](../../docs/images/graphs/dep_graph_feature_topic.svg) diff --git a/generateModuleGraphs.sh b/generateModuleGraphs.sh new file mode 100755 index 000000000..c759fea30 --- /dev/null +++ b/generateModuleGraphs.sh @@ -0,0 +1,91 @@ +#!/bin/bash +# +# Copyright 2024 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# Script to generate dependency graphs for each of the modules +# Usage: generateModuleGraphs.sh --exclude-module :benchmarks --exclude-module :lint + +# Echo each command so the caller knows what's going on +set -e + +# Check if the dot command is available +if ! command -v dot &> /dev/null +then + echo "The 'dot' command is not found. This is required to generate SVGs from the Graphviz files." + echo "On macOS, you can install it using Homebrew: 'brew install graphviz'" + exit 1 +fi + +# Initialize an array to store excluded modules +excluded_modules=() + +# Parse command-line arguments for excluded modules +while [[ $# -gt 0 ]]; do + case "$1" in + --exclude-module) + excluded_modules+=("$2") + shift # Past argument + shift # Past value + ;; + *) + echo "Unknown parameter passed: $1" + exit 1 + ;; + esac +done + +# Function to check and create README.md +check_and_create_readme() { + local module_path="$1" + local file_name="$2" + + local readme_path="${module_path:1}" # Remove leading colon + readme_path=$(echo "$readme_path" | sed 's/:/\//g') # Replace colons with slashes using sed + readme_path="${readme_path}/README.md" + + # Check if README.md exists and create it if not + if [[ ! -f "$readme_path" ]]; then + echo "Creating README.md for ${module_path}" + # Calculate the correct relative path to the image + local relative_image_path="../../docs/images/graphs/${file_name}.svg" + echo "# ${module_path} module" > "$readme_path" + echo "" >> "$readme_path" + echo "![Dependency graph](${relative_image_path})" >> "$readme_path" + fi +} + +# Get the module paths +module_paths=$(./gradlew -q printModulePaths --no-configuration-cache) + +# Loop through each module path +echo "$module_paths" | while read -r module_path; do + # Check if the module is in the excluded list + if [[ ! " ${excluded_modules[@]} " =~ " ${module_path} " ]]; then + # Derive the filename from the module path + file_name="dep_graph${module_path//:/_}" # Replace colons with underscores + file_name="${file_name//-/_}" # Replace dashes with underscores + + check_and_create_readme "$module_path" "$file_name" + + # Generate the .gv file in a temporary location + # "docs/images/graphs/${file_name}.svg" + # Remove the temporary .gv file + rm "/tmp/${file_name}.gv" + fi +done \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 7b1318c7a..f62f5d492 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -45,6 +45,7 @@ kotlinxCoroutines = "1.7.3" kotlinxDatetime = "0.5.0" kotlinxSerializationJson = "1.6.0" ksp = "1.9.22-1.0.18" +moduleGraph = "2.5.0" okhttp = "4.12.0" protobuf = "3.25.2" protobufPlugin = "0.9.4" @@ -158,6 +159,7 @@ hilt = { id = "com.google.dagger.hilt.android", version.ref = "hilt" } kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" } +module-graph = { id = "com.jraska.module.graph.assertion", version.ref = "moduleGraph" } protobuf = { id = "com.google.protobuf", version.ref = "protobufPlugin" } roborazzi = { id = "io.github.takahirom.roborazzi", version.ref = "roborazzi" } room = { id = "androidx.room", version.ref = "room" } diff --git a/lint/README.md b/lint/README.md deleted file mode 100644 index 3eceb434b..000000000 --- a/lint/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# :lint module - -![Dependency graph](../docs/images/graphs/dep_graph_lint.png) diff --git a/settings.gradle.kts b/settings.gradle.kts index 949dbfdd1..d4b6654b1 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -63,3 +63,4 @@ include(":lint") include(":sync:work") include(":sync:sync-test") include(":ui-test-hilt-manifest") + diff --git a/sync/README.md b/sync/README.md deleted file mode 100644 index b100e27ad..000000000 --- a/sync/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# :sync module - -![Dependency graph](../docs/images/graphs/dep_graph_sync.png) diff --git a/sync/sync-test/README.md b/sync/sync-test/README.md new file mode 100644 index 000000000..34ce5066a --- /dev/null +++ b/sync/sync-test/README.md @@ -0,0 +1,3 @@ +# :sync:sync-test module + +![Dependency graph](../../docs/images/graphs/dep_graph_sync_sync_test.svg) diff --git a/sync/work/README.md b/sync/work/README.md new file mode 100644 index 000000000..f31359e9f --- /dev/null +++ b/sync/work/README.md @@ -0,0 +1,3 @@ +# :sync:work module + +![Dependency graph](../../docs/images/graphs/dep_graph_sync_work.svg) From 1a6b06ff24e71554e6bcf9cf89d36cead15c563e Mon Sep 17 00:00:00 2001 From: Don Turner Date: Thu, 7 Mar 2024 14:05:34 +0000 Subject: [PATCH 02/39] Delete old dependency graphs Change-Id: Ibec84b6b58d8e7911057da046bbebddcc32ceb01 --- docs/images/graphs/dep_graph_app.png | Bin 49343 -> 0 bytes .../images/graphs/dep_graph_app_nia_catalog.png | Bin 38205 -> 0 bytes docs/images/graphs/dep_graph_benchmark.png | Bin 15304 -> 0 bytes docs/images/graphs/dep_graph_core_common.png | Bin 37011 -> 0 bytes docs/images/graphs/dep_graph_core_data.png | Bin 37600 -> 0 bytes docs/images/graphs/dep_graph_core_data_test.png | Bin 37194 -> 0 bytes docs/images/graphs/dep_graph_core_database.png | Bin 37095 -> 0 bytes docs/images/graphs/dep_graph_core_datastore.png | Bin 37540 -> 0 bytes .../graphs/dep_graph_core_datastore_test.png | Bin 36874 -> 0 bytes .../graphs/dep_graph_core_designsystem.png | Bin 37044 -> 0 bytes docs/images/graphs/dep_graph_core_model.png | Bin 35559 -> 0 bytes .../images/graphs/dep_graph_core_navigation.png | Bin 36146 -> 0 bytes docs/images/graphs/dep_graph_core_network.png | Bin 37740 -> 0 bytes docs/images/graphs/dep_graph_core_testing.png | Bin 37737 -> 0 bytes docs/images/graphs/dep_graph_core_ui.png | Bin 36661 -> 0 bytes docs/images/graphs/dep_graph_feature_author.png | Bin 47549 -> 0 bytes .../graphs/dep_graph_feature_bookmarks.png | Bin 48061 -> 0 bytes docs/images/graphs/dep_graph_feature_foryou.png | Bin 47982 -> 0 bytes .../graphs/dep_graph_feature_interests.png | Bin 47995 -> 0 bytes docs/images/graphs/dep_graph_feature_topic.png | Bin 48097 -> 0 bytes docs/images/graphs/dep_graph_lint.png | Bin 42802 -> 0 bytes docs/images/graphs/dep_graph_sync.png | Bin 38242 -> 0 bytes 22 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 docs/images/graphs/dep_graph_app.png delete mode 100644 docs/images/graphs/dep_graph_app_nia_catalog.png delete mode 100644 docs/images/graphs/dep_graph_benchmark.png delete mode 100644 docs/images/graphs/dep_graph_core_common.png delete mode 100644 docs/images/graphs/dep_graph_core_data.png delete mode 100644 docs/images/graphs/dep_graph_core_data_test.png delete mode 100644 docs/images/graphs/dep_graph_core_database.png delete mode 100644 docs/images/graphs/dep_graph_core_datastore.png delete mode 100644 docs/images/graphs/dep_graph_core_datastore_test.png delete mode 100644 docs/images/graphs/dep_graph_core_designsystem.png delete mode 100644 docs/images/graphs/dep_graph_core_model.png delete mode 100644 docs/images/graphs/dep_graph_core_navigation.png delete mode 100644 docs/images/graphs/dep_graph_core_network.png delete mode 100644 docs/images/graphs/dep_graph_core_testing.png delete mode 100644 docs/images/graphs/dep_graph_core_ui.png delete mode 100644 docs/images/graphs/dep_graph_feature_author.png delete mode 100644 docs/images/graphs/dep_graph_feature_bookmarks.png delete mode 100644 docs/images/graphs/dep_graph_feature_foryou.png delete mode 100644 docs/images/graphs/dep_graph_feature_interests.png delete mode 100644 docs/images/graphs/dep_graph_feature_topic.png delete mode 100644 docs/images/graphs/dep_graph_lint.png delete mode 100644 docs/images/graphs/dep_graph_sync.png diff --git a/docs/images/graphs/dep_graph_app.png b/docs/images/graphs/dep_graph_app.png deleted file mode 100644 index dc1e0b7d7292c7425f86c2b3f816d082aefaa85d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49343 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 cf<*n+a diff --git a/docs/images/graphs/dep_graph_app_nia_catalog.png b/docs/images/graphs/dep_graph_app_nia_catalog.png deleted file mode 100644 index e2698f0b0c01e5e2ec29ac8ef9438936567b0748..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38205 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 diff --git a/docs/images/graphs/dep_graph_benchmark.png b/docs/images/graphs/dep_graph_benchmark.png deleted file mode 100644 index a724c2fcaf307debb68e0144165c80ff397b84b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15304 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 diff --git a/docs/images/graphs/dep_graph_core_common.png b/docs/images/graphs/dep_graph_core_common.png deleted file mode 100644 index 8e56280684b3278b2fb729f5d83d3e15254fbec2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37011 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 H7Xtqmy1cpe diff --git a/docs/images/graphs/dep_graph_core_data_test.png b/docs/images/graphs/dep_graph_core_data_test.png deleted file mode 100644 index c3762b6006354acf358259fba6227eb8b9013750..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37194 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 j{6a!`KYa9qKp4$lHlO}`?+xfhE@W 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 diff --git a/docs/images/graphs/dep_graph_core_datastore_test.png b/docs/images/graphs/dep_graph_core_datastore_test.png deleted file mode 100644 index efe51c7deb097bbc644999a85bb9ea121aeedc1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36874 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 P;5epxLWiJrHt>G|FQ)kz diff --git a/docs/images/graphs/dep_graph_core_designsystem.png b/docs/images/graphs/dep_graph_core_designsystem.png deleted file mode 100644 index 1d6002d2a9c4f7a06facc7d89c3a8c7bdd1b0453..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37044 zcmeFZcU)6lw=RlO1t}`hn-v>HX-Y{b0#X#|9aNMmO+qI`K}7{bK|nxy?;ljAuOK8ROyQOX|#wJd9LS zRLmL|&g)T8?I@z6qS?tn2R>Qa$CpDzb(>1#ypn;B)vwxJ&kP!U>qdSZW7uuWOeeXM z=@r9Wlf&1UOl=ph(EPq~on1qXfh~bck=o=}cubrX>76I^zeYSVcXKIoPvZkZtcY)-$mn|!n&b!Y~7%LzP}zc zGPd)NWWfKZE^^awg8%6XRf7LM*omQ~qEcjU9n~BnIg5q8!`I;z7(z9vGW5DJADFn` zUSp?nV0U&~_!7 zh1azvH7_r(z<2C%$R}E8aL+$}2<6P@5HZU!II;grwYRIGkx>@PWuV+yyxg+d3q4yk zk))qY{ADLm?l4?a6|dm$)iCJZ`0fW~)Xf8h<`uSgHS&!L3)nnpW1lv3N_Ui(IrWVz z2pr{v*5bvCp3U z*#4Q7k+Cs->KT{8v-zmW_Egj0nWyRkuNrh-oIU*?E%(3N0(9Mm})ehmG&& z&!0x*Fm8$0bbX6$aMy5aG{QkV*|dF+_n$BN{=Uw}$HZ~!B_aD_LX1?U{Wm(ndi##F zD=@|n0S#MoYI5o;qQ%GEXBAB9@W#(sBC*HK-4y2EP!p^S5ea(^sZGM-7r~f)!?)J3 z;;8(`Pf@}%Z5Fd5_159s5=ZU5X*o4)>`yr_{wissn?<;u8d(spqPhTH?P84bT``nQ zId~yXZo0gJI-Os;*0A--c%SDMlpXPKu*xHQy0_4r?P#fFlF@q0i*piAZWj|}4U5l* z-M>81n%EN~Vt!`)vE0@gUz4K3IpW?yvDJu?qjVX3?}{hzEtfQ$NNXm%BT(pWjs=O98J_k;D?RcWBOUEf@ z!f+sn>En)np2=hA(eL*d5A3EKg#Q;#X|{2(l_5Bb9i448f`sFgL!WKa5T=`Jpt-ix zrDINf=>lKoE&X@KxNJEq-puGbfBk>hpAyF<6s(U}hzLq;+2rSA2&uO<%1)e(9(3 zt#|jC8APe3chMNLbYiO0(v-yvQmETo5@dSrF>xB)xREJ)>&FH0xyg=nba=x^9n##n zzf{9j#qN}$p0dt+lXcI<13UC;Lqp*W9UUtXyQnxv0Sd3N}?ScXd6LZTvl=0}x~ z9A~}fEXurQ%{-?%k2r;$?ju%t&KS+}$a&8dsN9$z#c&r7;pD4Y1*7MjfAUzATANq6 z7&38+8i1474(}oh2E2GW7Z*qLU7M}IEiaK-XWJIW8VeW7c0pU#^8!5qn5XL&)2aTj z8#itcCd!=$=xhecoU#X!{O8W$zP1HQ+wh`)Nc%7U3ac7>9C4EWV>3+Dx^B>qUq=CF z(6AC9>ioeM_4}#vHDF14VP!5uX7w-_td(^6$)ax+JHu+Lpj6*zf33eaTbgceIALYQ zbEbC+e^9nOBjdcn>W?Uboov*Pf$pQw8|^tr)ROU2wC~A__H4hkY4W6H%|ChvSX^{_ z+7d6tv@9b_1}8LV!9Doo+}gfAUKy9k;FocsZ)Yct=ogJJwa*ukoFv3KopPi7SNGp89_ zBMl=mosEhta#_*cm*~F-G)4(udeMG$Jd%)Rla5i%rGmm7l-FyrU8w>;J0R0RYUeuR7tvJuw4*6^wb`}# zNTpgB*PiD3n_tf;$Y{V5P(JNk5-`G3TEAj@YwU1szHRFZ?$Se*wEO072xEuGQEldoK6Y%#ukHG=9&l1brYn<9%{M!Hi-; z+nP$lSF*Yw(x9TN&Z<68AwA-4==#c7#J<^xS4AJVH71H@h#8lq$tI~!#);i(NXZ78 z6(oKrdqBYd*J&qtT3OtIjWJx1DQmftRZ}xKoqXEnzGuoArKR=7HuJG`JMnS4z`=zd z>#K`64|GP|BwxpqvmWExYSxzY(`c5`)f)Kq7etx0vp2tpI|aJbt=SaJ5HHB0I`I;I z%NllBrFtFmUPQ9Q)weW5A(Yqi`8%-s!PL}+zrGW@vM!de7#w|&7CRCa$|1ryE^)H< z`{M{F$;#G5x!4ZlzB}k5YG)W$#{%rr+zGeDr?;Z!bS$yzovSl`@N_(<<)VI0LLfn% z!E&#pojt;)u(gk6tf`!&&P9EEa=^$M*=*gn zrop7!JgwNreY8y1Izifb$;442mU@buKDnl1cir|WeGtTW03fy){8;rNKtM*AiW22Od+w5SKgvl|b)GOtgO;@rK8=fz?k0e*BaXxK- z`v5=euY;VB8~Nm8*@4y7eht@=U${G$ZRj`CS8SYpDX~+lCEezGt00~z8H@j@5p|Rn zzc6Xnb;+iAW%B2{ONp|%oK`+caGfRcNgB@iJv7E5zkfF9PFdHjE8bw?>TYO^S`u5v zkD%b#1@~}X3xvjFEVYc^S5a{IjAf%zOL$=w3#2t{-wu7jH2_3-oOnA6-Z$HkDzU=I z2XQ+eM4Z+W41ZV$KcxP+w4sA6Gk)ge#@tz^tltlzJ(*Y-OHakk9e;kLv1l}2)-%t_ zmqX!sJNbMV$tSs_O7#?5!+SEdIBWMt)$PwLEj4h}5)2;Q zv^hV8h)v7wsVan&57a_=yAGCE5Q14@?E~#U1^SGa-}8?cwBU#u2SxlxDqNHO@I&6X zwfAf3N52X(hRhCB%s8jp$>5|=MV$&K30YwZ{>vtKd|D^0lPp$)d~K@H04_~G;#mmbIz)q7Bpf;3|GxIu(sm{ z9KeKfyuHRrbsPfkHS$#UodDu<`|MCL(cUTaG>ugh0FKv+ZaYBGKpVsaf|p}#5C%EF zg+Yv&1IqT_tz)`v@JP1O=YWby*iNDFG-gq&8a9q$P^(P-brtp1l*gX1Oa9-F(g*M%>PVuBr~Ix`*T2CE!r`^%;~ zGqrlT_E~^U+8r@vH3WXy<5XOmh4ojRC@w1MT~oH1wCiX6J>8Q({f-shJn^cEOxG)1J5JEI?8QtmXAJab^rZC!wGemf-IE7 z==wa`6tewr)BEL*nwL3d#)w(FI2#)pX3{b9JUbn8vnwkcrl{W7d1sjKxkC|zLT)a0 z>+6^<>R;H+FWVho4{(BC-K5Dri&D6RZS%`=ZUsLCn-z$LI-S8}^oaxk1vk@Ym<&TAtQW^yJjJzNoYnRG z_2sm^oZG0P_%KauToYeLdRx_vrkE@1;k+^i8X6ky>Wgtz;T_^q7}Zo;!sP^h0DKpWD=F#mqFIcNtktHD#8X#$mMCpilSRW z+7Ch@t=0qiN{&+|DQ%J;?MK77P9OYY+mWWKBquT^J&SP2*U!F$My{_cDET7DRTe=Hy;oG|%IR5ob?mIRmEyMbs+)TX9tNh5a8l)Gf5JqsFj zU7(AIo?KJHmrM>n^ObiQtPHEtShVWquvn595zX5r%9uCFEmWHvP++jJavjuC_1@=O z~}#>suvNUzKfS?iNSO^Hmb_LCP)wM&TEf!vu1yeShxHCx76y-c4|zuP{c@k<*!jk; zP9HQ`HT8H_x$0R_M70k>sb z+&bcRCl1Z~h6BifYB04-4GwLX|A|%ebDgZmaa$a=Op_!tq?E`8+Mc|)wM+`G!}7JS z#r>{iHQmA1lk3X(MRc>NMd2y>qw{W$cr6YiW1PT35hV0GR_R&z>_xneA>5uKc6Fc9 z7oO670IQY;NR?Pw7aSU}`ZG58+@$xrim1aBiyqTjH2JP#>71~K^~r=%pWC80Iwn#l zBM)G8PTXUn{alT$%ZHD>U*pyD6Jz0*%}@!W7ca2f@Q43(?&;rpq7BCD{{x@#G3ctD$JeFx@<0cXwS19wy32!dVZiDBBW%*FVB^~Ysj6ny4W%+QG3cscJP zvudwGKnO%iHTcZ*ij;w1yUgvIa@iHkPU0fKdlC%>#>V-dKWjpcfVc>P_cDl>5DZ*N z9ga!DQkbiVYWNSp0W5j&ZTjSbz{lr2#&h`PymA1VFdbme-&&k96NqNykwxTaX6kVR zr(h=7zPbV&SUx}!=3^jUZmu-UH=0`Zn(faGBob)H?(gPK>#uMXl%MO#k7Y@!92=Ws z)hG@j^p`v50~cFlR%-wBRg1ok!j0PDYx^nhM${*jBVER2@bZx(M=*D)eHX{`pjesS zL-tL=0&t6lg=S@pgvmF83M=}8Ao@7^;A4?xb>7@iHGPB}VlsuWG__AYt0a-~EQg@b zo4o~bB(ZzX9S&98{Ccfc2W%61upKPtl||I1&cvO&0-%zSbxgV!`sRhJO0&qdW#)zm z;JMCDikX*dC$BzPD%rJ@N5v*x39&MN6}fC9(3SZSP&RZC#zhv~{sDu;1HdTSxgc_% z^n=CaFO7|kHpS|n-rh!`9Z)PQSa3X}$htnML;ag-;QB%%;q*P8#HSrTjOSpSWxCKr zI)u{BO%6x;)&PXy38=kMcU4u@UkmQ|kp46bZh64fE=)#=_#;Zk%wvE0_AB9%iXFSp z%xjBtj}U|l@GUhpH5HO3zYaXyCwz@wcX0FPp5x7NVGHB6TvCqDq>TR_TatqRbTIBv zg#0y}J483}Ejj!Yz$U{{fojLzLx3H;u`<=*8NftxkL|ID+ld0mv4>Wy``Xe%qhKGs zlUa%)Fyu(Fx|K8t3ig*eL_Q5e6w0aIPZBtA`J;Ts<{0W{qq9S zL-!K!*y3S-tO70(8z4MJMF#8`{g|-!bGA~Qc**0HtZMKCFR=V$bQ_a7|Bv58tOH{_Jo`C-j`#%v z0t^kKVU-C##}5;=oxANCK5S0?;pk_}QC0@gRP^XQvtN29mlbQ)=BlSb%=MB`h0qCu zIhEP93Cxg8Y`%0atE0D`@PCOJX`!P;Jd_F826LXg%a;0+7fhy?PRxuU)N+(_``UC= z5L}P%6uZI@sxc}Cu6I%?z6u)MdxDCJ{p5f8rz776;kv>MtST^{P?}_A7q~9NgmQww zYK4|!ZE2YfoOfHL+q&McyxlkFuiazIq9p*sx2*68hZC>+YvJKj_7Z2r%G==FB<#131w$vAc&%V*`V+8%$@!_nVb+kbiB z0nwBPNY|D)33UMBl!j`2^`m2AY?(#-Rsj8(16k-FAD>(|zYW;^C3ME+3xEslT`93^vkmjm*b$9g7x%sc2SLJg z5a)>kN?L~IJd~Dce?X@S3<5+q{^J`Eu_$g2%%oXeKo#0!;&EM#3<#C%F2Cp3>D;6M zL0qUM32(l*JtwCMG+LG+*nOkE_ z8bF~9*KR?Wd^#3b{Je~e!-tN2e>~CoS#etM%=HI7#)6CQ`nUJaOBZ#(SibnFog{CH zy5tA~1;^&+rt8uedmjn2F>+SC#bsPI={ zNGmx`y#=qz4>)`ZKsK{F{q;(=vovg_>_|XyIs$9kn({zy_(Icgwsu@vV}kSXjLC%4 z(>8xkXk2tiMHVsnge4pVc&5a`%CU4KL&IDOO*7^6!Uxs4nrgni-v0+q#J_nY#fXTD zPz-npCUn2@gLVqI0-y^@+)zN*#`URrR^Vkl?r@6V{cw1m6I}10N-e2rH z^iL_44MJs|4s)a%*xcP$fwQ6k*Zrd(n6AEJTHgt-Z_WqZV>?(GK)rRnVMH9IeO@Uu zbZze|hO67I9%5QH9hbp>)5o|E??PDf0T+|+JWy_mWE(%R<@RtNcI`U~lB}5k1v%lA zo^Ru;9?luLO0+k&Xo45`>7G8WYbYMItsO8O%20H_EO%B1xoZoc9)a>ahPt|`V85kH z-~5u|GF+3Zsijpy7wfeCkGu{@A)>>74OW#Txq>W=60a{HT52XDoa)w8wn!RmSG<%{ zH%I{&o^AkXikyoH(z#V06M3qk9J#S{F78c>cs85&XD!0zB+`U5Jg3eW6OhquAlk+1bA6w(a> zh1=FHKnn2iqi?vGfeF*#QBlKwdoKMOWZ)i-!`;8%g&?;6^jPt^R#N*7*ka962UXXl z*j;j-(-{NDpKHrmwn~l}7n zu9uJL2_`q1^pVadN6o=IYRhv}?(gnE*81TX8@jlStG#9s{;{H#-36v4-OIBB9%!BD zCej7=Eq|c7049prQMZ}oP*Vd&yRC5M%?s>0;KBNwMROzCYzmxEX*Q04Oh_BJoCD09 ztj+F3B^JK3muH8n`}|l)7G<*$=eJ)gyH1ikH=haTDU&NWodjtSih=F*ymCnvWiit) z_}Z>5$xj=k2ytJdw9K^MR;1JN7uS=}Jb=EL?nqakN869&MntrE{6>P%r z(gJ^wEAXrN8l(J(L!!HJ-Mz&Vbch^3H6VZCWHUMG@oG9o3Q0gH+y|k5_d*@RmIp>YY2{nNBnft>)BgscGMzCPGG;&j$m<(TqwbK<$sb!A+qeD$ za3sN6F95VNjyif#Z>%w*&n9O!HALXE54?EOt*yoXJGW-TYfZBi3BkV9qsXIFI(EYB zbO>M9B|$5(3eYBcpP#wFAD1<^7snM8`V#VrGY(hn)PMl9>awLHW8 zpk*+M8UNdesVC(!vk2~vu z2zbO?qAEYY<#Xv;@d0vz+f(UO07@-4Au%zr3W8np^QRlPH+K7w2M-zP)CYF`9-uQ_jkeQ~V*GD%utU;2l zf84RS=Jz8h5{3PqinJbFP45f}?XyN%h6CycH`#IMc}Rm^GIw8zozBp3g{w9H3sDDm zhU5|Y?d^>ywye$)OYgYjwKD&W8;N*W03weuMFGfx&FR7|&x|2gn+2JRLIeZPj#+Vs zWBZD&#ghaY6O%KJVA*{Do@(aOvAa25<&azLAb9RphD$otSkq5%>~cX)JGx^$YRkd& z(6=CkZvFo8iQu8VhQ}HM(a^4b%I->sExg}{PBvO7w63=jeBW1S9*ZZw@@_M!3&~SpV_CHeAel=?524`*X*GPG{nZfD*|R88 zz)bDJ_6kl1BSy!YFyTv8hXTRdhMh=^n|Hoob|$%Py<_w{J|%77#W|0o#j6@-?Mk6% zR!k0wc+~sh9L1BC9YE^1_v|4{Tab@=gd1KF+D5vn=({}tJdTcPGOgZ@%_)W?hXizDjX%E|DB|FV4EZ zjZY2=i}}2GJEJKI5M(6{YX`TVq=9Z!8DUeR$62rx0l%NwWLKK;qC8V|Uk&`zI>M{W zrjdmxY--OkoP0eHc)NZqNOJuwZTZ<0i_23XG#ev!gcNT>w*RIO;r}5jk>af}IdIp3 zvI*mvfmlxYZj394>&TxbfCt^2GkZ-n_N=_y$lKEh!BG-7dBO6YU&e zY8od+`t`Mhd(1*l@uwWzce4FJPnnakla*|`EO50AUjmlxK**%@Q8iO~I`pyBnrlP* z&R7tdUBBtQG}#fh0F-}@?I}vV>%jkZ+-aPMJ-T(+q7NsYJI@*ei1^pahai~U2tudD zky?M5${&4oNPj7Z&cjl`z$@JE7x0@*4eR6eMjg9uFQ_dztA#-2M9}L>R{87^Cde5yM)$|YOqajV!i`E^1Sjlaec zzwI3NfM~uTSTGZg|QWkSQrkJiNVs*(tpK6$-DE`n*8N z?85d@#?JWY@M71_5XdJc({6c0K|vib@Y0v*<-|CU4`@e$00o3q76I-IeS_390~N(E zbA)N1sk#0(7pA$;U*?3#e7PY`J5m`L85stMup})YH%k`1vrrc>k$q%p+aX>!DsS&_ z4kh}!h?sh0d0g8Cq_-)nBT|#{Dof##TR2D{M?kJ}X46&Pa6a_sHE5Kq+=i04b){wh zHtH)fhoZh?8&TgW)7OXXv+r@0YDOquAFlCLl0!W{yJiEsd$IG;hhTbE$0^xO` zr+`LQliuI#^`(K|CDDh0n5Df2Fb-u$|C-@(C zcuQ~WoP>^njiu>KceT~P|9SrgX36le|+;%c3hE$6A8Y?G450^GvaYX&;3 zFX!fp<#acI0e4411Kx1+3?d`o8&YY|CuPz;9m*!ZcGlZ}8ATHgMawR{(&Vqr(Thc0 z!S|K?`9||jvi+PlJOH#>l)E{@~#oZ!j#90Zm8!;dMl%{{`#4+ zf&ErbuHO8rndv1^Qjt#&eTS0bxyM@cG?__dxVq+~6&fJw!gCPxWo*JnQ=Oo&vh?VApw zzij|}o+<;vDw-R}u<1rM-^|thlAb9H| zU()o%>az4~0B`$A5@5kZ+22=u6Y3l60>SQ0Rfbvc3i=oZaGF3?1} z4gBlgzRz4V4rk353(&~yoz=@dS?>~2Xa~KC?KBv88*LH#xvfLLBt*^VMo>>Qk-lh6 zk%1Jw9$dZ2yMH-CXN-mnb1U$9-D0&_dg=8~>a-vDTlfM|#KxfB(e$+>XTgihmL}|s z_9g4*2C~|bbTw#He%wB`U}`y~e05IV(L86AGmmOxZmm53>#!5Xt)k=C)Cg_yy9KiJ z_+|SKsC^eOKK0i)s%qx*Pn6-c3B$c%Ur*qw#Iow&J&DlzrwMQm%D;oaP%GvE;MrRd z!YXJ4=msO8S1ch2-JITug60!=YIgaZmmqQBf^65pV&ca+ovnM6)g_8w4XP^u-v{}; zw^^d|A#dqpt3t{gtB2I@+yhHD6~yU?{3rPV!9$%?XUF1-_BHCQ@PEdfCe~WItj~Os zxP#R0hQaj|XB%^=iC8<)_jTe<^yD8V+Fjloh)UfwU{Vh!+LDd;@89p(`r@1;sL7Zf zZ%N22EtPa~t7@>WbW;K)S9w5sOfv>@QJDiDfvjR?m5x<_uk+j)?jdSXd0E8drO?d!55VLHS53NmdX_WX8-O5pbb$%}hdRNm1VTk5%W;JG^|s!oa+6cYe)u{`ytnkI#nhH{) zH=Fb!3kJ@=BMho;BiDf>N*1JS0V>vXv5EE@B8$~wP}-Hk(nxCa`T{(C>b*chQsh0CdokI57Vb9q%z+B_F>B2#U zNI{Q|Gbm26FK_^mnb=$r>S(pk(ksK?S2qL*eb#`MGx`E^n;5H4rhwL_Tz4Uni7zR7e^cKD&R?=u@vnB1jq!TN=k~m;X6r4MyL zu%a9`z#Lgf0-%>rAQ;+A%-ed~*Lx!EDrD;3i*M$5KmhaB43N zv6+JC6zl40ezXWZx3Z||oJQHK!Fmd8RR`}D*V*HQw=uyc)TTPM3AJwrAg}7GvRN?o z0)PF$86G}Jaug36|#CnGW(LQ{ZQXr;Ls&JCg$d_ zjVpkjo5D{3?>gK*k54q@br&XY1Sq!;>nWDyR&}47X4)6D9OrsBS=|>+6}t=CwiK}_ z_{||W)@zB=z;T-CMA?G*vNSFOIC+i4YRB|xIHEFM+F!R_?IcSz>ARi5RG+Qc*o@X+ zKMvo*A{3z*z@qttkQ1IYW|@yI401z9D%NI9fnS-{B5;KJI!WiBa}CrNyEj3^6>jOI z0IFT`y!0;FAUD2Eik5{hPtTm?3v{mJsUp!nW7UrH4?6O0RS}WnIbYIcO(nO~K<=MsH&TJ`U;G1enTv=MZ`&!6gbTx3tn!BlFFO7et)2O15L@JbWtS(0TIk_L z=X3Hvh(`@f8)0w1h5WWL>7J+lI8}dNTe_G22?(yZwqnTc*rjNl;=-)r0Ke*vy5GBi z=w`>J=;nBUTgODnE#1-YVGZoy^JoBmZ90PV?}SP;M7MnWbf3WV@vF~xoSo3A6L&@= z!$J9+~(e1|QM zX3VF-J>RbF1u>*z>U#frCczUr%w>ose7j`r_L@t@CH|vlglS zlX!TEF(j%)%UTucsf*@yf4~k9aRvXNKCT9Z*0nmUM4d1!F*)EidO5oP)*At99mtS( z%XkYKMOpc%l65~lwnXPaPM4G(xkP^?7JK$ec(K@DF_ts@1?l!_>nD3W7aaYo{n}|+ zZy)YV7Mn8d>PYp4SUCHA%n`(v-H19zj!qwzuRg56e}-WpJ&~7 z&7djfgrR5OFbv{X4lg{_)uAg6uRD@HBevWLub5#I#bsX^8|VqyvhD2BmCJx=$S-Z4 zvqm5IWnGThh|E?sNA6#RWlOoOj7{@mjqIGW6pTsN_QHlgh7P+#@=%p%gqP46@FmKjTf!Tr)I@idpLoTUC( z?}l27Cw*TZ4+EGh7u1X80$^>9Wd2sX{<)Y2+agB(Ee4AID`_AU>*sq%v&q`hvH6Fv(Pa7%&2wR&=OPahj;HJR)?Kim%b5^%&)xQ(MPz7tw%mn}|HEDcky zYgh6>8WHJ?%Mz*#1ChYVk23E7QI#rP9?ow8D$SAz_2f19ED(+tkgnm2Nz=tk*oi(A zv9Ay&NI~Ff^%c<(3HSkz4`6%W&JZ0y8!Jfs%qL8^TgRogmCAZfWzjLCERe{rj!pqc zDAu+a_<~Ul#N}J}{Pub;iyunoT z`}ZvzNEpsQMQV9-DjPZ_KwqF0v zSy=VSVi^Th@{(ZW^~GMkjzEEis%D+enKK^iLnFjQ5^;UmmF(5vA3ck|+=qoqdHmLZ zDq<3uiNBX|@AQ(Dz*#rNWLkZ}cRjNtj?KV1Zy; zOB`8E3|n}QT5m+7gSvv)oKo=89oYF4Qtgq~+sMsa zWMR~A;px7>*}kPVge@Snl@e0=&aZv8ro1w<#R)VSD016lrFJpygXwsBdcK4@O6>6u zj0`Fl1toKduPzqV7ei{)Wz=dcN*A@Hj$#j6o6xkdhWSn&`MxMtaGc$8qhrFcYDaW6InhzGtfkcInlEfI=_d=SQL2;BM;K~n(ddc zytBMYsqxr#plEKzHqme@DQRLHQjijhYzQx&q2l{&5Fh9CEuqSnWc5Qtw%s8+!dSt7}QSuG6u)=Ow65_&k0`WU)NdgBSxiW5gN^k^lDv~?D#-O zo$lC%$yIGRq86z9%V^TOe-pFc@{CR_<`_f6WBz;)i|;SB1ND&}DMBe;XoPJg$m9*L z)nEJY=*l_}25^;Pzq~qRA3>)zxT-;}Sw0-r&f%++uAbF+HD7k7dTBLH) z$^=nU#itg_br6$l)`9120?LIRfQ}Sx?eo3nt~YAhiilxy^`{3& zYT=7(%5Hb=r_EzLzdsT|u8Ja6vV}%ezWpcZ_$AqW@vhwvp`ne1IdntIGKy; zS3>LCoe|P1cJ!iCk^IS_91QI@@__;=r+&Sues@yr+|TwjI#?1I(B#dZ(BANb4^@04 z!q>mCdRmu{`hB~{d8VO{gT{S1*+?;d%~rAx6!c`Evc&xsJ^*_#*6Lc|j0$%Tv}O=( zzYMU2qsI(p>8nx5;}f_JvK?M{%gLMBJH(Zon-=s6>Uh5$7}f=kb5D%kc0>ktkwBlMJTeJO?nP<@og5*` zoMbp&(5xIfdE{fpVpQqxs1&Whnl`Qp{Jqhg%&Gtn6(--erZ-$D-=x|hqDo~Yp?)<1 zvxtJKkgnhW2V!^1?*SdB$f$Vx*Byz++rRISos3I)kW{P6`lht~_8hj|E`~)A##h>P z%S$4OCCj}0W=9~tdW5;bz|fF(R1!YXDB_!oalfh{nw^!V@xhcWxT$>AMM!S^Qv zg@F!ce-KS!UdCy5<$#+nMq*hpQhs>-mk)U|-Gf6(1rJxfd>JMVF`T z7=bV(xDQJl#=d%b01t6@v9MP(BCr%KKftsFhh}J9 zL6rXv0fx;F$45(tZ2cIpsE&xX86167P1c`QQOndCDR-r8!($4*B+|~oT&f;y|8MstviEddGk-~!w-og7qGQoAETlTx-098 zvyMJd@7i6ob7qsvz31svmm4(K_Z%yDcuK;I&g@)c#mT!%#Jl6Kt(MLR40(*%Tn)G* zAFt-tAs8zE9}-YdaBotv6wX3NK%bCpO2zJyjBT4#`2h7kDL;7^ksF>QgBHIlT7s@~ z<80vknC>1t^Ui+?&f;Li7TFS?-#stf6}xM7#jkTKm*KHEFhcTbKnlDAOAOD;)QUA5 zW4f^HF!K0ZUp>iFwFxa| ziOztlsG@u#Ik@KC?>#eOs9S86gBlNzE6Ud{iq|O$gmZ!jp7VZpdb$A=%2wFQ>k}4B zifpHrb-WF8XX^hYwF4#)G&49P{z9|q7wO2%+sgw>b$`wjlxKmy;ncSv{(PAHW{&)$ z@f-b0feRo8$`gV<`WXwGrP7MKtUZjTCE5(F!UqHp&&dbS+eZl)RaP z+YBJUcbG&^g@`@a1lICAVwD#bcl_vGp}GZus?9M4H|5m-o_eIok1>WF*-{iiuT|S?AQpgqwYkRsTu_IRQ*M&D;#U!*rOnBcH#CRZ6#WSnbt%rZv9kre+|5P+`|&FIxoSR z)2%-S2G|7cot;#-v66vqRUCHgCV+l`vWa!U8{-+9uf-x+-=^(dQ5vH)b{13=rOdfZ zbfZ(pS1{-8gzEy7aE$}eZXPLBlfU>9>eJkx01VX8L2bjdPJnQS7Y&`p7*W4 z12CZ;N>xf0?Qi=UP_S<z0v4L^|$%d zHyA9+;enVAY3I%zI7N8$34e{ux@A!2!M!Ib965E;;rNd*dRXbiqui~N3971pbogLy zyggpD6moQx5^GShcaS~|+PVG1vB^u>msbAczwqcnZ*}XOP-6_K|L6yPgC<;WHqwBU z8?jkPZDvtlI{2*oRn8}740T&mpvQv}=w6daj*oxcC*l6SquT8!Z-8{56Yl3U=#exV zT>+QT;NnP76aX#dHdP5y`HuYG&oB|hfcifLWYv?wmj~8wIno%v6>b;0H*B^sk+N&$ z;}?h8IRZdkMhE0oYfGedX&?#9U98(bG@$JEf%EU#bQPJEX$t;;nxcUKh?8##%FO&J z!9Gzk1nTAtfqJsA$pd5>)_so!n7xF@_fryjK=K7OJh|R7vRSL+6nH4;B>eA5ix=(^ zeGM{Ac|cf>83S^$92k;76XE^qOKQbAzoi^Ukkx9xbcdb!2uNRzpPSS^#RKbZQ#r+B z0VJ`kNfjXWbp-Mg0l*D6L0mpE_hCDIzXG zcwi0A>;jE(;6GoIy&DpOLV>Zq+W6RG*PCt7a8-QWWLSs*(Ao6HM?fO6b`!L#ZMmR~ z%L}PM(4oc1ElwK!>jM65TIUh%>2$5w08vn2oc#BGc`ohZ#t#pa_pz|Da%oY=zt$#$ zn(S#lO4B9|;+WIEckJ2aJHBOuQeOaiLe9FWH9 z1=@{L2ecRur6rCtC{#BD60=*HJ3dVu++(r2>&Kl9s|THS2LSz`9xouFh8u&jN{gTn zyJH&8;}7I%qn+PDFCd8qP~v19{p^_uCCxOXwxc1o4|JB(Pn7li>}T~K-n;YQXqt0# z$o)^CDOc{cUaHyS`3JrqfFA)}0k;}ng4`g$lCy}mu$YFfYb^bJpab5tmu!i|*zsoj z1G~;42}@VZ(Yqb`9d@H;f#dw^EOw3WvjA;N8I15%889B3q~P%%O(Wq5TQzbx9jC$s z)O_RBM)M6J0;LP6+rPiZ;Y8YS9;p*1q)VM`lwCd> zETcd>a2lGpLPs@4|9%a<5ld2+mcAB){zH?=z9<89wkMEK@?Vn=cn#Ig03Es&5#(C# z;tu`&E6C9O^&TM8{Kp;uD(&wb0#wHTXMeg`9xlYX;cT}w#s(WE&e3^34eE7!Mrp&y zZh!%fkF*;mc(YbqNbrxR-gLV=sNQ&Q+yV%KR#-N6HfXLpvUwvas!_QOySiQN3EGW8 zW_?qGEX2EUPat%L8h75&-W-s$4@Q|`kA>dmeKw^$TkE~$VE@`qpqA)AcM+i8d~4?a ztKQ{*;zhkpJ(#Py%j%xl<47AdFD@#sm_l z+27L$n*b%_hCtO&=329Gzh|T!P&t+%?N9*^EcT)^IU)YDd2zYUj6<;Sd2 z^2LjP-OEvb>0jD)6_^1ZW_9@`5Yt0`&xtpZr2(i}{02b>if&NqT3A)LHiVsSybe?+ zQjI`c9~|i6mhG!;-i_vv0fp4YEdj<1ZC(3O(JJ z1?11#jEGvI*~8kr$y2@%smCE|kpnfALIK}bF7+5|19+*dzmHDYaZP%8SuW7q%t*w# z&H|FCREnvHz$9U`T492^|l>;3UALtcPf4D$_# zv_s`GMdlTkDD{y68X6D%00oC@Lu5T`BSnFtKkG{N+dw9#k7F{G`v2NFv&an{5;&nJ9G z@6ZP=SJDT{u04REz~=?T2v9^s6b5|+L9dgZwJQxBb?5OR1p6>yA&(IDLIdAl3npQxo6k$Pe}$3L>WB z@01Hq+3nMYBL1~C$IpM;wuH0}>H|Z(kCuUzRI2DYBIBox&u#t!RlRyJgAQr3^Ig*8 zXNEziHonpXs#J*#9oXvo_|QSn$u^Om1bS-d;Ni<(Y>cddILR}4S5d$++;Q*&x92Q8 z(X;cB$~4p+Y(st0tnm6Q*Z_YU>$2lK3T#QBIwd_qFvsC(Ft<76bESa5Wa18)?26S+ zDLmFG*LrZLEE|K+eX6VT_KMQ-f zy3cngvEL9r_vup|mhzvqBt)z6aGo)K#$|Z6;vwZ1Y@3~*k z{ks2n{wUd1lmY;|XWIIGT8!`?`A`O|>9#yQ?;{=DMa-p(*r96| z#Z7hQQB?x-dkFi-dGeiv1D>@1rgJW|knozX4ruo|-DmH;J6m13l?!2lb&BD}aQZ9W z2saT*&wbn3mRp4%7QdN#g$;?QFAg{vadj;G<>r3VjXc}t(1qq20|=UV-kmUb=R#GS zzBPcm)>ixE3yBlf`Fu6zT6{OnUp1{R7E=t6oQ>eGrMMG&Urq#4<5Ahd`t~V{IAvS0 zi7L=9KT}L8x@J~rSGWGTp%k-3C337GBhp>m`1u@knu88`V9#*SvGAFp2MP1G$w21I z!I@*>n4N`2^vQ&w(o8PqxLI7(1{Y`s*{8|!x;9J^>9w6x_{aSfR^L299V_s1*u%Y& zvgnY3&aqmmyNiqA7zbMe zrn0zP!tZUam8P<;L9C~&oYXaeo6y^RcrG0lP&b)uPDoxy4Ij+T!LN^s4K(+PA}MP% zo|x(P>kl402zJ-FEkeh5>1pT?sL4D=dw)2r4|_ir)W`_#(O)C9?YnMR&DthZH3Gb^ zU?w8XOHDdz*@9)<5%P~5rjZ*>Wqds;319L8wtvy`FmGCQxlLjAq++aB#w+N*6ZwJ3 z%k-2-?NzDDY`D8oboAWF7W;DiVK(kS^tE&TE8^}Db8Za3Ib zPCy5T$hpEzQk;i1&(ko+(TVRj=gD?_;wD>c3Qf;v z4lNZ~MTx1$09Q@+KfF+bTy==}Uj1UVz8#pKtocjg|F{l@%;!U0T>)>s>Q%qnkH96& zuowD`i{CIefA`&VYGrD~cu{M1^IZI(Ep*|u%a;Gg|5Tg3tWz7s`{y$iQopo0x~Xve z%05=UBUW@TQmHd^<;aSh60)q-75<{V@+d5uR{vNK&C6QZ4%>O2eEIi&Dqa^*yxp!V z%;UeqmAb&4NTrVU+{y?BbKoa9Aalo$j zo{5auiRKSpzo?prSW@OX+;JJ3ZAY|FrCC8+Se>=a&Xe~)Btik zV^88w*Gz9bglO%q$%A;6tQIydf6mo@MhAFgIbsV?4!B!lQ3DM%oUcLj0Cm=vS6O3n zufDsDPKk3h($_&yF8SH;RtEI@oMJ(CDg(aiIu&xqvu@RlDHVJ7)vo{e<|ac2xqYopYW(qpHlvh=Ia#lee% zcc+~6wc$ld#3e7kVp-o$qm#DW@(R9DERmXEWlD)vA*x@SY#1JhNt+wC3--`AVQ?bo z3lk-glHZ+W%Pa7Lz@whl7n^Ejr`4!r15M+;c{_)lN`h+{3oU6JAFmIGI|ymgmx8Ml zUUWh~;9~IL>#!_Z-Kt^$bl!UrPf8h!qq}8OZ%DS4od4H*%_k(5o87Q}C)U^zKoAm; z&<}m62q$&hfMewo0x;V~+YB z4D+zUN2f!~$a~-0AH0h(?E2n{HMlen#KikS3qa2Ln9iKM>f`=EtuSqrBHs=44Q$S{ z-v%P9)h0^v>oN>8Hw{ZOJr9uiUa+0sDrB7Nu4OwKdEBSp`bGScSJ;a@wT6ELj#nbq z;^gFKM?&$MxeDTY+9~(qbK(;ZUA^Nl@zh1iCS4ZgR_z7^hV&rFG}F~M=tMbG@TdA4 z74%ne`YBU-&bJNX0^Kp9Lh7?76P^yj-`%S^7YEM}!+27unf;p6sh_UH@~2WCSMPL+ zRCy^E><{J8-o|nryM1&B>B;AGiBZTH=}jiHlgozjixL;;gBePaQVZ$B6ijOvL|1- z)8|EN94>6E3483`$G>SJsgkXWyxl`$G|BIWP^OGK@sGDNMpJmwt4S31|BknJ&4J$} zf#yy!{T05x{hv#@o&uz7aQb{>tyyMfbDaU-&fPTWAE6x$X?U?SqyZ0JU_%XvbUeAB zUeZ^&bx-S2e^%sxN_J-S?Hq7rQ_sN7E?(%($alm7`y|e1qLoy3V`k`IUVUdETV1Z3 zk}x|4=lh)XL)TxvyFV?CHHeI+Jvh~mfO!+1{CLprwA@y}h!X;m3Bc#F2LU^`gS7xc z$HKIw%SpZ)x*ZoPp0WW3^)XL5>hAd#Vh}VNTvYEg z$o;Ovz5%-z3-y6#Vp8P(5_{5?j;X|}sh(^#AT?0hLF?3%*5K5~pD$h1cKwO}%Cj{3 zZ4EA&zz$AVqlWI*)IHY;oxH)>Nct69FOF54+Xaot#!wHyIVqzqfJBzFId){G+y+#U zg0sb+@+nUMCeVkgvP11gzC12aAF@$z6%ej?21r%}y2>TN;Fk!0MM@R;+L^iGV`uxgQ)Cw zGSp3y4I%9|+D$I9GGIwX#ed!6;CTm&w+u13C~?;0ECZBUv>6a;YO`+KuQJ?6_BQwt z``N&DJ(U;bI{v%U=j%_7`R5&l<6i)K#k*+;_sN@b|+9dlp0TH+hFJyD+QtE!M^wLaH~?`{X7 zcYgfNCasLHdD)e3ci%5xtjM7>;mKE5rA)McT~xG5%fdbTU)?};gajzMX=8fYq#gUd z;!ZSZgXCqmG%gI@6~9vg8Ks|-l~Y2Rphfu)R3!%k4}b)ZBZvI#1ArGXSJQ$^ zvV$PfkT_|-uL>hpkie-e@%6ZmIc}19Vz}`x4LZai1Qe)=za^MC`Y+4(dmYL@by^{3 z{NhVXs`iqKNn{n4F1lbc!vDb0Lc1?bVEIxeyHI?0D?n_OyeDwVn}dzg==Z?z5&vp^}*kT~)z)8fN79^=6-B z7+&oAA>tAvH{N9-OvL6)*xS0?Voh3x8Zu7Fl*%ESg&20kw^eR^qMN3mEQ3D24$k<{ zsti8GBdMTXKa5F3EDaMd3efAZ;d#%;L4cLua+uqF|W#_jU`MVzmb6#^krl~zT)M^UArw6dj*R?+V+W*FqfdYk`A`HRc-d=POzs5*G~|ljg#-UYmyyn5B>*+o4k~KVz7vL&C@cgtNUbKp5=XSV`PLn~{ z<_4uWQTX{oI-iQ2)Ou>@fXYN&(`}K0<}fd02}0_ZH%AZb2NCr1-B_6Mp+vSE z;9Rl=QNjbf9Z$4wo6dE9|92(JA~~dn>kWcmSphD#=}?B(ML?ijO(AiOFRj#0&R&_O?z(f~7kzRtJ zlx`x1Y!C#0sN%(0|Fv|Nz;7YWkaY8+QUs{C22>Cn7LYfXOemrTN?pbYKj=oNrlY&Z$7)JMmNx^yf^{W+ z;PoYf?D7ah>le(=9Vh5M+?D8*6Muy1pHKVyW&|gn@N-+YuK`AoJ0Bj%UC z*Q`l(PC4S%^SE+}-Z1sbvRrJ^_`iE+{ckq&A5r{Y$KbSfjtgv-KjL>28&F85J zyQlSk`^&}==$(y)63t#D9s@iiX@lqy1;&sF@p1BT-~DaEqGrgYH$Dw*hdOx-P%|!o zTn-l*a+WpU`S^!RHwT zeoG*@zs#v?*I-~BYVI)zQA__7`C9Xgk3EVFhO%N#x8Tm7apw zwa$1y5R5JZGZPDvJbVAfx`==kX1gNO54YRlR0vCU+xR8=^Ntb1IaQH+mMNt^LRpvKh%tR)+dY5M0Zm?gD;jGpnfRUpj1-s&1nEIp5$gSI{GThIWpdb^H4L z*+|4fv#r}qND);0T+FS?o{wlAO%OpB(oH5D&YtV=2btF|-GCcaO;FVBSLs>tqW*Es z!rxz~&AOLSg-b7>g{{<}2228=X_O2zF9w@9Z$;fV(2&tTM-MNM<@5HMWg7BR{cDg0 z5R`HbdpW?gqmtvzU8ky9Q~4>&W>)c-1gfxmnyNd!%oux0;v9&n{2Nb1!VfkJ!g5W1cJ^(v{yJS7tW&))yY z{xpKLS)<}#FnN$gbk_FsY_^~6_UbJd>bjz>^P!7}2ePZbhw ze9pl2T&FIy^WrYePAgU*kK{lLxQLG6scS$2a9eNGQBP*emK~4TBp*TVaCR?8K=#wN9b_+R0J-s`rdf`mw!R5pVo5ZvuyFkdGobTt;IdzQ?&a{;4(~8 z+dTJ`=Y=yEQMCXbsUtBw!q*lN<7@RFjW0}LI{>T`t-KO#g$kaF*Tx4vEmuSGb>FPT ziB&=s=H~XDDumgaI;TSfzMS-sutQFOh~(N;3Lwgn!M9)X2>*ZW%jH|Ee;>_MFPriY zOh~?Dz{%_TBZUDgTHHP}#Oxk}IflPx*E6>ui#Rd~tOf1GS|pNay9l$mes976hM5(R ztBf49pI?>85dMKk1UtjzVB%y0v@4nUUP2@Ht}_=7yGKjd5agT!Yj6m&@wt+_06)HD zJMt02rcAW zfm9;F>2~q*mT~riKw2Lp3;znR?4fF(-itg@=m0A#hpmxW;tf^o(0Y*L?~2zyNt#9o zPYFuazxseG%!I0pacXk+!_Ynmj?CC)5J>mV`vm41t(cxH zMniPTcxXt>o<~9ktwIRSO)yaV8vzgILxo_FpQ^EppxxONvHBWv2CL8v(r|DJuLDpT zvbzmr=bZF8F zr5_`Ju;6&+`i#F$ZF&{(G3ZuqWzwpkjW3V8_6FR2IUT-zCP&c4X5~A0)lu`}kN_1S z4Rq!Id}@llw@en1Q0}n7hb{%@557^+*Y<^>n(q3iwJzMPC^QZl+B!ASP#Sf660pv! z?gXKyK$g8zh>#&vvLZ^Q&fd5Wv(hlxwtv_u86=dP5@+1p>|km9+HsjwFk{|~A~M_T z0rebQSln;;;I=ccq0D_T;a;!{vI<4r2oiIZoy+0v&mYLIBLDz|9XqvNYMqno6OvwruD>e}oByblaxUx4dona(w zuvpK1Euj2NTgCvZc{ZU1iPf^0?fV=0kkCJf=4@-whhfn!sIOSUk}Ntq6w_@Y?6N2? zVR0axV#i*-bCe5=D;pU>IPUL-ayi^WXc3w;Ufw#HXFci`l1EN8FewM}F-W=*=9-;* zG6<-6y{7&Q6!zo#Nh{=)|9&?06WW7+nF)b7C+*X+%OL|VQpK_6k%tSuxXX9ax+TAc z+Puu%$Uk!h8T;A_V}^Nn9*6uVY2iv_0^C;Um42eL^hR^(R3S_i9z$A~CY*T8Jk%&d zF>5;dx$J&fWTYoh1r!)F;@p{$D9(74Ps^QwG0fCh&*WE_fb}`M+#dX*KFDn+_b&wZ zKhH5B^)G$s-wS;LMlg9hItUs%1CbofzAk(_X}OOx)8vss@Y2zt8JEQO12Bbk(#QAnqo(rFU!6_sC;Woy z{q}O9fiEZNl$O%mOuu9OE8htfLS>`+LNeykwX)XLrE<1hW=AYoI91!=Idg04<0EGq z#BpiN*5@%$EPh>es2|jA-PS7(n2K{Fud9jZ^gSVQ7^%|?F>7D_7ZC%9gifqDt3ceK z&wnh%9t`2sKr|gJD`Ih*gcPN50RttWn(P)$-y=Uj>dCqamYIY!J&!v%O3!&L9sM+e z-WHOhy$j7GBa?j6rz(i7iku0xEk4NXvA{17XT=~LovlVOwo7%kK8;d*!_bwEExR0- zlt+I!fpi!9eB1BT#X;^+8IAi|c`1a&_QQ<%#o%lLNb2TJuh1PkO@%IywE+G%|#aXA^_YewCm*Oa^PrXNIm-Al3H7SMC04bGp0 zTj|U|CmL~2-mB@HJ!YwSRr8i~=(#OtKkDF0vU22TzDt2l>KMxaHEx~llFm5yX!Xp- z1>I30?pLASU$9gZM!LxP^NrjLF46-m%4F5UeKhwix4G-7ND&#Crc)M6+*wE9BhMvY znzN+te*S@`tSU&IAqu}^s;pjbL6ET>zb(A%eCdg1{`He}FctAxKHJ*rvPhw9v3 zhsKf_(4>c4nIllx6G z4W^YopYWuQDrJsy_MZ(D<7!6_KbNlm2AO|P^?iyhEhSUMZybT7WA#UJ?{mrz_wqUdTpUk<~r32(&_*oM_Km`?4;A@ zr_{-!hmCsIc0hscR8{VgZ5*mCM|#H*m&fw4Df4BG!Ai>@&Fo}{avXcam}B30M@T7e z*D*jRU+$0fD@}b$S>Vf*Yx$L)x9i!=d_Q2~O*Va9wZ5N3f)CWMF0EooO;;{$do1_! zR4FZf)!4q{O%e09!m5k=_*HLU$M0g~%3!Q|tUR9ZI-XRO(Y{CabAvKbZPv<$wK#_> zUp(E{S7Saqr`(N|5X6J0F2_>$4vCADDwh+(KlRmPn}?r|&nS%L5{Q5$8b;>j4s3DW z5v9YzB0&so>8<;ct{kqzh$%zek_~Hxs)^1#PDtr|$c2y=F6U)G^X1Pco}yEnCP3L^ zs#kOZroIl5M+)0>>v50vtgrMncNR711lKX@FcPZ$UDlZQA z@bx{|aVYyC_eS}vcbxFs1{&)ng1-_Q>Ou|cnf-v5>?omTQ3e8rBadoVX+Bzt3pb3Y zWY1H~$D%DZ=>opR-pJXP*?h3^~$;J#-{8%y%Yrqoc!|_t<+!hEcCJMZZMA|8ZV$qzoidr<`#nj4lfVQb+Lrya;9 zc=sV7SV*fcz2S14d}zX_o=I_A_R>TiCmZhur5-x7w215JL3&*AqhgnB@h3EwGPEdS z8L;$|pBg+_uJ?<^<7w}GcpcIGC%XM>a5V7Bq`f~$PhI0-WH`4;?Oi?p?Y`h9# zWDDlqBMJPu*Y*9$-@Iq(Q@VYM_WM@14d0fp-nCGRE5=BhG}G$&GILKxG@oE1Iw_~D zEci1m2p;J<5zD^htN4o#^DHa-}}VkP{!~vj+OUPtCt$< z^GVgbcTOfz=s~8=p_lylg!%rwJ#pTNwvL;PwE`^5gS9SV&Q=*RsORB9NfJh0tpbUB zFL7H>S3iZrS83)DQ04#j!O&?uJvG1d`U+?zrh8o$l zg00kN6O?zQXBUBdzOS2$Xj>HFMC(*Em1PHSgk>q{x$Wbe!avP@5yLw3bm>b&hLJGf zq&l|TgjwPlkL|s-2kDBEoC3fl+S?xfZGSA!eKe!f_IdTu7b0uh0juEz4t>^g?{POa zC{;$N6?mJA=GBn5D24h^AXeB`6QA)ujOp-IjPc7zgpsdR9(w-m^n8%VXXzI<{&%-% z>NO)@jOyOrfUTmRv*1L+mR!)gh$B_lR$1ru^hEYclO#oYbw!m!_jO~-K(R5>_e5UL z&5xGH&dbwf-sQQGO(%wqo;~<4t4HRR&_>1-x><|L0ZZG|Q>o-8Tk~3S{IfI}1O=sG z4VNrVTAWPZV8 z_UuKKI+_F3U}?vC*t)Rxux0k?+KoW67yV7;>J+Z^?P`?cH0Rw3CI8^rF^XIH=gig* zOHX0%eZmgnK+Gm~IY*a28ud!pXq(RHR|ow(TMZ>()F&JzDi`T_@FUTLBR2vB(|oZ0 zfar~I)}F_F{7pRyoBnR5C1%)SsuV=!KZbpSLQ4h-?q1-a^})A?m;iF z1y_eb3o*ssYTiM}=`Q&8kTjy}#10luDZi>|vqWTjx?hH<0u6Zd=Jp^D2DOy95J((b z`_M3NT=kNXBE@|l{iBgajZ$zkpN|;WH!VRi)yv@fhHajgWIA%Gd*uy$p`XP1oAU+U zGChg3-KtnlP#ZhkK&QEbSjDpS!SZwALnd4vMh!2z=MC%O9jU(naWg}rf3Zb)8;wY` z-QSYnrCFdF?$$4rSEY6?Q*y2?*buzkwpTUg0vd#oLy+9OtihUvDb#)yPv1PUzQuO; zJ91gnY6eDI^QDOKFiE{s_a-DpFIF*h`NTJ=Nbg6f($BBe43>!?E#Y<)9aU+QX%to7 z5PhvZSGh+~3Nopak?*{)+>J5?UP7~am=QgnZ`Y-&_4bnWq-RUL;}T8zI#|=hX^pgK z-&j$eC(`fuDjh6Jm-4pKckE}l$Iz>HzN~t*Jp}rs&ce9E0Zv=mYK0RSg0N6I@x&TP k!%Xu2GxQkA(H6057AmGw_z!^`9uJSc&biZg?aLwm3v|no^#A|> diff --git a/docs/images/graphs/dep_graph_core_model.png b/docs/images/graphs/dep_graph_core_model.png deleted file mode 100644 index 205583afa9fdb1033d3279b0bf578662aba5cca9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35559 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 diff --git a/docs/images/graphs/dep_graph_core_navigation.png b/docs/images/graphs/dep_graph_core_navigation.png deleted file mode 100644 index 5ceab49b80b816d1d1f5dd72384ba5f08b6e55a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36146 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 T8tw-W%cie){18FsY|#Gzv1a<< diff --git a/docs/images/graphs/dep_graph_feature_author.png b/docs/images/graphs/dep_graph_feature_author.png deleted file mode 100644 index ddd1f03f6e7eed21327272a35caa8595886a3054..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47549 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 z 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 Wm%ELdKrOtCM)mahQ`yRweg6kai@%fr diff --git a/docs/images/graphs/dep_graph_feature_bookmarks.png b/docs/images/graphs/dep_graph_feature_bookmarks.png deleted file mode 100644 index f07fe891e46fe1e4b37a68a7dbef1cb2bcd75d9f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 48061 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

|GBiAkxGXLWHNBT(DNPbW?`H6BS>jx9JM(ljm7 z43fExr|V*K$QTdbF-hOBQ>SfwOiKFBYy4$nLhR+p(ZM41SiAXVL3hsE@E}4!IPc@9 zh>D{D#J)mDi`N55E#w!6)*0OY89)1|I#)?AUqIs=if~z# zP)>IugmpEju-;?4#$u;_kZ<)cZ=zGo4_FONbaZb#R=qqR+I8$${rJBoHCmf2;7r%^ zSu+?`9|D5yO(@v%to~TAnbx~f6j+UF+be0rwxhdO|4Iv&Uw<$DAMXO9K_L6B^&y4- z{?+xzjph2~b&d#Xf2|87|C_#=-y`q0Qq=R_@&Ul(k@`kkpqAMb-yNu7c0ghMblYt` z*9FV$UA{}xN&T=7NlBII4|LYQNPdrqyAuJ2xv+TJZ^a9hy=SLs_|bI+YK%WrbZytV zg=n{(1>P|uJzZVII8P1US7HcUsZQgoQ-}AMRxE)2i($<(UVTCB*oRn9D6@!s0U&k@ z`RSfhheQwOSfI@fs2)y@adJk5Nd2Q`9&Nb<&VyC+ zj?7(HM|2j51PQrXps@($GprQE9cne8M`W0ndk^Oc;obI7Zl-94Ho6ERV#zCJOS&dvgv9O}3>5 zN6WaTMa#NpIH*{Ol}#%*&6KTgc153YejTlVC>aMGNK+5cu#1IfsIIfK{CyzIs-3OG zbZiNv@9Q@ya!T?%q_Y}bpVYs6k@vRz73GeTh)IEF;ZfW|>~TIh5Bp2xFgH@mOUJM8 z_(ccMNVMN(wZa`XKKj~)JGFd_(;Vw?(ojR)U4|(E;k#it!;(MZE5{uu{sl__Y7aBF zS@-k;=M~UGlHn9pCkf&nXF`;vGSKd~1r2pu@W}pA7Z1Mqv(Mw>x}Sk^X;-U=R)v|= z2EeljwSCT2xC~!J`Sq9Gky#y~GCU6{S2VUYxDXX`iU3=gRvDr^<&*_Hy(i$k9z#ro zai|#vZ=CuX?KWIBP`YnD+)0J!*&TDo z(RkdUuI4EZsve5R%fI8XVc0srU@LVyp5X;8$F%%A$J7C%VYOeKRO-SARe%j2Q}+cK zrs@=%MXZvM3P3uocnc(%P_**&bpNpoq)SJJp|gz0Ux|hR^HJHLee>7w!jvMb!X!B< z^OSeRc~-dw+Zqt>^)i+|!4Gc(c{)AT-l^9HB!!r?lU!p580e4|G!+y>pC zrgP?+K8O42V&r`a92^T$*^{c+XoHy1x7I1k9U1fJ1C8y8$qPwj9$d^QAQ>*lR;U}t zI*&B$MIpC}8w)ivggWS$1A?f{A7}K4{P!fshl%RtA+=Iact)JpsIxIKmaLq>%;JG`~P&*pjA5RFYBen zxpTMGnbt>T(U2{xVHTv6AYHwBkb5;oa&4mVM-&xSBk2EEzWT30JeqNpyK2C^`jAFu z8tYt9di6(8iS*)s>wZsjHRSK}r;$uFgx1CEcfUR0AMf&iEHVAB04Cdfuaza|e9M|0 z`4C~{ABig9r$FS{@$vCkSr*pyC?bnXgVz*6oNpyR<%9L7`|P{iLovu)?-=qQ4*I9E zuLBi(Lkc2VIaK8i07~)U&%3md8r~si#Z6efNiJ)F0q=hAPI~ zU0rjH3mxK&K`81ea!#h0ElK|XJvu{6%VbJiIxpcfR*iH03Ya|c-D<4LpwBy_cXDF##*5}lr+50DJKR^Wj+h0L~h-d@(C=~?yArn79 zC%+_N-DCjr=nnXs$v|%NFUyFqpKO8K@B!(`i1&*R#=Y3PD?4&5U}TG}{JC*`6p%JT zZMc#$kT2N|{q@Ke5cV@b`_Z}k+vf+a#7Kc(Ck^Mp zuTwlMhZiJ$VeLVA3CBV64)B#!7j+8Rw3dUm^9;F^?0RkO<~9*hAm)Lre#Xl))f_El z=Voz)tO*Dk@JR|_d7LBz2BrH)y#eMO`@a-3sTE3TnGnbB9Y;yis41L(c>sdVx&lC| zTC;gWip(F0@{NZ#h$zLe-r`)*sqS2q@w;pHddhtY7iD&z9-#D=xNBI<=*ED&Q;x<- z4eE(@0YTZiA}(t=Zmi(2e0?sjj7v)P!~hzd8+T-#e>XTDuYiz^zXteAxc26l(_(9d z*vB9*SFZrA$C-j7X4?U!NYmomwBHk(#hM*&z&3c*H*R_wa*Gd2rk6ZIH_YD)is&vW z;V!g@UedIhi7UNGLmCfGgY+1enFuAvWL*=$Zm#tusj$i!V-r9?t0r)Znm(+@4-N&Z z6pift3c8>39j}{xjo{&;>$j>3Sba_5r|Ktr!}Ko{4vtSuxcY;-wrJM26z>wI>WRnr zgoqSbD2WcX@}mH%!4?2-+RaYZ$t-e!T%f4p}P8i z5l7gjZ%DhDucxxE3pWux8zQ=}**fHy-yR`b1mZ<9i3jFaroSlpHjjL~Fnoa&;e))p zuC%QeJeVOWj9(O4q|mJ^(c6@{3_rHDwbcve643)8#}K4g`hZZzvNI5p5^ zbrS?qH{{{-Paf8P0Sr{`KJ*M|@<0L@+nJ#%TR`Nu1}>a9WV zSr-D@Z=}|ygLb6%u2VbqoIJS4G-&~_Mzl!)SB&J%snZ+UQ-1&^haqTp#`@tb=0VZ= zcc72I2?u$;k_bK!YZ(DkY+j0GIW*SDHt)6=x$GO)VctYT#$b0mR2zO8$EnDsA^ZcMRt z%pCj>kZFPTBcdg7G5E;^z-PI{z`Ub<70d5HHU2_R1KLV_rfOgenbCaQ%M_6Cj(U=NoG0n^R>e2daJ1j;BcaP2UsNZQXEgybw3cL7?%Hs%cowgMfX3to*4b(4~`|9TP;_?dJnt&dMGaZ;GKwD&{{ zi_Jok6z*b8|1DfwDsj(J3K(UjTp8{7o}{1s=P)4lJQdt$e7t4?)Z3FMG(q9Fx$*R+ zR9pfVCzSgWh2H$i{Jng{2PiF{{5uyOD1U0V08Ap$!hm2g?ZIg4YXO_Lw;2g5%$eoy zwyhY5JmGKet%J};IR9z=M>2tR_jO%T?~oA&RCo;^}2<9#F6-W)A%WP`r}+7eH}&Z2Uf#M2qqR2vE#+I#7?k z5BbBW4(3}V=sJ=yK=d*FBEzS-f1DfHr?P#eBd24&cq-G~=XnucBLy_)f?uqb_QM&; zT{{2=0FJZhhl=}Z+*p{%SfVO@S=NgPXDq8==uft+Xo*amFJLddCu!|6&3o(smHpA@ zOYk0ZBU;v_H%|Om)GC1uD^P6K(4yM+lJWVf%daSEjpplwc$W(La8^Ts1*K@q@fuZ%jsD%&Dv9tkR_gq68wxzPYF=B0=S zfB{!Bo;Z5aLyj0#=iBTU%E+zGA!n99^DzyZ3KUl^J=}Ile>kGMl9Z8-(?j%~NtPD~ z^~6e|ZRXD$;|PYZ`DjO@tsvw?pNE*gcNLSq#l#kYT29+d9gQ>_6TkdWaQ?Q8djfhc zlcNe~b{s)$-;GefP2`|EVROX1eyA?-DS2_4=|=jA`L)+qUn^A~>y#>`yzRL#kl0d4 zbsbNJ;h#=KSDZ}=s(6Wzo~ub~Y+A6{(B4&iPr2S9=zOxgtEfMn>b0oUAz-}oG@h^D zbsPh_tOmd9+;?vvJXQ7go7PKDxs2DMy$gb~sra{>QKDHJYURf|txP=MjtKB(`o89~_M`B#x8Ol|76zZe{Gx@vV-lj(1 zk^XZpukLrGoQP-w)p=p=SWe_OX@1;>3Fe9Rzth^jSL%G@)uKb9$-5tvQ$`|ftEWcg z@EWNb9tic1*S(pZ`oQb=H^1-59}9!wQm4x*+Cgve?|RF@tf$xty~EYo26(xfR0=!7 zN{bxwZ9IUGAoJ&g+lqWAB4@1geGBZm%*o#`OvK_ZCT$qHZE2-tr?XnC=dOxVKH1Sd z)7kqLVrGOm5SPYs&5%iy&(8@J7jec~+!#Vt6Iui_E0HZ;R_VAY%iFGJ8SZa(OW6wFEa7 zJFSBWEz9SeQk^b-F7x-*L(+HCMmrIrF?RM)k=_@hok6DWJaTj4#wycFGE zuI>kH3U&Y~w~`Wt2IuA%^>B?qXf;a?r|uVP@|q*7Y9owgfJ7V6m)7WlnVN0Zg=3{# zYk_|}L$LX;aSer26DDEVw<<^%$QO>55++mqX1e6(`NC6R$BI3gucHv@KQ?d|vpL%m z#BfHiFUx7$ET1bNlP~)g)O2Ta0#@=mMx)VIi~ZD#`}O8U_Lfu9(3E1=E{ng0IqiK* z^}ei;D%ajj_2NL#bp;e;A>#>X*);Q*nFv4f!phN%>)*D9+hES4DW5ZRV)1{jh^j48 zyS{fvUO=!p+W`eVbQ%o)sZd9FjR&;Gl-rFf74EFA%=a6(WL6ze-+R%QJT=p}SLZXt z^#=Dr*x;SusfVrhRl zg*c%t|CaYRTQB_6sQI1@!Kwm$Pr7I1>8i>OWDBeF?N)BQ!Xxxu(?^w3fCPxx236`x z1g}#mBEeQ)=ovPjA-wbW%@#D;8VT=Cg%zrDe1DMO@I0XYE1)@i@Rc}QtK?Li4e0G+ ziTu#z4ycMwJkX~pz-auGjK<&mz*M)!CWi5+-PA;6{A}qR;>Ao5No|*2MRvflmfLMC zgn;>=L0zSF*5%>gCP2reF;?&NRH}Y!X>U*AR<{4U1()10D7yyMvAoi(G2hALdJD?X{PnK6lcFieP(LvYfZQUUtmmKX zdExpt+XDU5{=$fy#Vsljp`{|z3XbrSAkw~wMTMya(*UR^;7WV{U^b50Z06R|hDe#k zS{IvNDp#uBI|;g%u?sgrtq&6D#ZrFN3-eIIL7=fenwQ#D#@pSq=>;GnWIp3Hp^Ty4 z({%0^>oat{`7jXzaG~S@8}Q7gDRPh9&lxc{Dz4~N^X3Xj&kb`d4=>+c4zyW+k;6Fi z%6KC;_4cQ=%;jJIyxFWDTo@wdH9c6=_vOW5!$?t)W?yyh1vUCQB-&+PG+mfphM(f~ zRmxl}YPadUn2(S6L`zbDL=?8teYA;J%4ty1Ogn7;uSXmmpz#Hf|A#(+?qUs|)*)Y-k z3!Po@Uk)P|`m zgkNR;+_|tbX7|nl4JFmi8}xH#j#x2s_f?Az=Na_B#K2Lsq$1i&OQtVc0&jCea@eg( zskvpW^A$PAlNj|WI0dVB3#;qYtucbDd*ML1w5I`5&9gCao5|?1>#j=U0FjBaoC?@I zPq9?WBKmoKSB?c=B(^d%4;k9D(+2ik+$sf8Dp9-qAs|>`s}kv&xg$`4I9i%xrYxuQ zivdA2@FPR!S3gCURnm782B@l@T^D%$i%;6-?%@kW{K*~{v8&_K!B-2Mhej?Y zuWLwFj-D)#Y>g(fGIc@n`UxZ?uXhjFobP+jx!*H1xTzim-P`D3((-3$LJ7kJIm5WEjb^LNTGSJI;e15vztyF z+CWT&7pJJQ-a2Hwc7w}VGi&BZ1nJljvPS>U2LkGpZI833Z;Qj62Jg;QRQpyE=9*zO z1W4Df?|4}?$baHfAgc^sMJWW>XDJ?bSNmRj8)VVmA81Pd*UWN7x9J}oM`bdU>`Sa- zki_LX4wy#*N|&Sq+O{L3NM1xTaa3+TDwWnJ&5P~JL)E_I+7tr%+fT7AaE(<3f5HB~ zS#KczCwPn$?~D>C3jK+0t&qQ+wDuMceWqtau36ba zawD4XAws_*wl_jyRD}xUhypoDDkc@*TLt?@KEM($vMSzgrFXPWVcNFvAQ(5NQ?|W} z@`TfDZ*=BXlajVmg|%&rMs4ImDb~Yk#utB*oLr+RxQkB;1sgA_i`OnIJ5{=@8^@$% z*BIyuoIT$9iO&1h&4`!SO4YV=7g_nd23zsx4{Sby;P?zIZb~ycZ|SZBt{WbFP=x2WXznvrUmS=K@Wez!EP!N$tk2#AZUUg3-KRc!pUdYf zeyhBN9=Pu&?8w`*a7Y;NRqz#Ck08HUam(p5x({cz$p3iCb9z4GG_g$QHvK&jgmiF( z_Y}4;XK?Y@IpT?SaGg)Ai)*Tq5-7Nz!ck(X_}#Ff@q)A74sDdDZj&~0vYu`yyvk4E zmNSlk!2LicB5NZV`Q+Q>w5`SuuU8;LRwi?shcX$AWoinAAIy{Qj}*isc%H`>&lH@D zO4`!G%=RW^Bft4`+l}oU?40Iq;VOl@8u1dueW~C&sn+i7{cTy&-WERBS^91f5Z^>K z0f+lvlqp#xAj_?(C&FmTiLRJ&Z?G$cWRco zi&>a;?m^AZg5v~;SG6CgM*vIw+Aeleo%og+QKZv*te6s;g-4-QIvXhQ{z8<$sMID_ zj7EJDLay^-e?H+CvHCJ)kQiB-ZH?5660t~c5KGYCYg|s4vHt0C6f7ED`g*ijILmBg z7hl@vQl*;k1(k3IaS;ItPu3$jpAukhaOJHzyLoy`UJ@bp@tRmD`b zd+RcxKOO+;vFj1C$#OuZ4h(JP_o7tMa&)IB_McAx^BodqK~V5F!;7gF>)+}Ze$QU1 zl=^9i=0IkOJCzEt>jf@n*n8CpxnsD#2jn zhg5j+46>APv=dr~pm#cw%G)|Ke78+MV*7H?jS{cv)Vj#7eMjHwHEcK=j=5}AUG`eM zCYx6G09yeVXu|hFH~V?ZvM|!gtPCaIN9i#Oxo$t8WVI0QQYd^+0T95Y_@LA*cvJWN zCadKDyWW9YD&wg$LUY&k>mNKFc-1=Vu46#yDmNHuqW;?BbqXNN?B=f23*Ao9t%IF8 zJ+a&K@dG75vNwooAznomCa z5}pI1>Ve$sgrn29%h$W@|CSHEFRN6Yt=j9RF`cYqI5KtXL)BhteV;V#n^KH?dF-FK z?wwU0%~`1o9GTYvcGDjHP`f(*ZN}8ws8^?wZ)bW`jWfR4NVGhf= z0*B9MYIZp|Jbd9*9j><9tpq>@>O?r@Kves{>@^h`c>2DX7%opf&xx_;7uv$P?vMuh zh`*dirc0bOJi3C{+{kFOefK!HfUXZaL4`-3e0y{)9fTHQb9Ydm11}R-yz}m(%$0`4 zKr>LWL8N9_9C2vFO=L$UCFyCoalEM$`7tlKL_^aBai4 zV!_oPG^H1m3^{;~N&J$%X8Y;^AGNn_ zv{bX3IkT6tYi!lwX1{~f%~Y8C&)%!s51c(iq1yfU@*)F>VrM1*|9&D-9E%@7TM))t zKQAN0fsPl=7N`R)f6r=n=NC(oI0YoH5FZ4C-dP#m`wzX@r|7{$K7{d9&;;W^|Ln=n z1owPgTk(c2UW@sqe;(#k^Eh^iH~-X>lF^L?YO_JJO2dw9umpci0l~D1l=ILzDIk05 z$TF!P-Jd=={q1wpl=7jX&<*Jg`G@~R9FtJ)cipc%t#G9h#8UmJ!ASn`?hl97!luy` zfC6n~%|xQQfTXRhaHL@ZT+lKB2aJnMi$YMm$hw+)-r~^;L5?rowHi-z*X|wmX*1)EJFiKuqSJ{wP$y7ZTet?Gj-MJ$>!H=j8n-b5#E$<3^a!0EfHP+2-Hq$Zz@h!-g_Coq^jpoLN1?ax99&khC z#jfs3t2&5x!J3sq39ipBmTn0|0cdF=+xS03MK6pIi|&JxaaX!QA7Zsf55>7 zlB?-QsrV7IJ2Mq)Gi5oTrvRz90KPD?<5LvPr5Wj}vbZm$(h7O&@#S5!ln7C?eO;g_ zq7(;MdL0X{BMq$}>w@mJiQEnp3nEwEeH3OoG8KHz=_r6LE?#HyX<}cq-;tH3;mvXn z+uQ{ZDMSq>Oh7#k=zUwqVYc8}Ec{aE(5q9HExZ>9s1hM4YzI1 zii{*8fI_ES6eTQ&iU0J3E0hNI3sbQnX|X-i1H1)$qUn~u-V4vvS`L^92oGHTZ21d| zti4n4mTYh{X>}$EYF7Z;Ma&LQoi7njrh?kclnl6G43+gBbeUxM9{SBxamPuU+I~iQ ze!cNa4hX_dGu_-{5bTc7(u2;DD$r#xQUV2{=aJ|zniV4XN``P?;j~SN_ML#8Ot7QS z-!y)qW&}SwJ?8Npuw7hw4i&Zi7H4by6YJ50d>D0$@8=T8#8p~Ee?+_uFVGJ?*u$0( z0vHmyfK${m^^Nu1tNs?oFW}bjCFk3dVc*1)@FuZ%#u%7uT&LWo&IpScniDuLP zrsW3T=sfFLI{Y};A-o09FKD1(Rjv*wf9n%vozq2XC0c6V@^1u~MC#G}JWT;glNO%j zJNx!Ao|*H)m=~;Xka*K*LB^;~tet>chZR5mttbS>HjZg_jI{V6+Vb_zUu#(8SA^Bv za52R4mNP_}$nNk*6-sg* zUyp?^552=yoclK*@f!Vk_tI?Z*J_(>qKxR@GHC9 zLk!|9ap>92+%m(B5!bxow)GNXr4CA#8hv-Y!;1-1zt9Q)B*#Fn94q zq-)Nj>Lr@DUyce|G#pvvd(-gceRt;jfpU~M?CdXCyb*6lIn|-2_FkdEI9mm%*}=sG z6#VtG%-rPiEakIA?zIEmab&u38zd_UXps>?I?1cjcI*@ z@S|gb;uVce%lDhC0iG56#PXbR1 zsyNy=dpOtwMrr8FW?W4`d=qEctdy^4%+An3O47eiQpLg}zmYXSufT5nTb|m70k`fr zaOiopCdhtsUrPyF1@q5}K>JUWnLmD1Xg1pX61~{AAgG8}>gqE&Ubcb*6ql99E5cBfRA?eIRP3 zVs}2k1nq5C;MaJ0EmQjCV`$eDfFt0+SHC%IsyU*U3=_g6S!&3Wf1j2=A2_cyEl@=9 zZOx)C!#*^lrKenf=fc_Z5H5t&H5#D(d(ntUiNvh63xpk=Ug-DRZ%OM)D>ys%VS-Dt zpndxrqbL*V&%Zrds%Kk@`V1`397%RZRkVdyP=|k^R0ybFNfVEg&ENKBbaSTWXOhqy zi4DN|uag~LsY_~`}dc`j(yFwe(t@p^gegHdYCh~Xu+Y- zed4nFRKGkb2fZ>ZMwIIA?VX$l1<0pG{hB}9pC8X{EG+s4u-y#Bm$E!M4j}J1;2L>j z0ntYe&)SU)C7vR+Bwt|TH3fXCFWrTJPgR2t?n8PfK(ZvzBFVI>kH95>D{ThzzLTzu zEoVrA_;w0N)k6|iudq0LwCMJy?)nZ#EVuON$igKvv z^3(K@8E59GVsa1J*>@hj`=<5b+e5)$#Ot_pl};V}c}R}sP~xS_m%165oGk~G`27#o zRW#llfz@gjsNWI@yD1)ZM50?FOg(~!iG5eL+1?4M>?`jNeJF!2kj?NTx5M`z2kh7! zh`Gjxd7&qY)zLdS4gaP`7rjty4=eZNc${r;OM%-`l$6Q2efwSKJ<2OKEYUv^G#(2Ygv`#oD zZ`hgHPnPIpfd-rO0`D0h+_Vr@wIdr6y1-B3Z=3YulK>g2r>4&$)%G@B1DEHrZzsbL zxOX#{&lD41+r*IYNHhjTL$QZX72W3AzrEc+0bpMf?F)y}$nIUB1g}L5rh*n0QL+o% z+X46S983_mdMx6}?B#7=m*6|AZlXQ$x-uc9c6*xE?LkjeEanAgoKW&d-ybh7*cbDd zIu|AYQM1oeAiMgBD=xw!L9rtDj*ZWlYvQoFx4r)(aFMX{qEY(3eRR3^z=aPJ^fOx! z{Z(w)?UAL%2=v<*zh^hr6JpYpXQOYXjp`kfF++*NnYZubylMoPC2nzY(-`p)$^IG` z#o5GR)BR^5&-h>mu5uTHoBBxJN%zozx>Z7{=5c(|ZiXOq0AjR}D0XU}r^|VFtj_<_ z+v{@O4c)ez@Klq_~>O9am)mzS6eJ? ziX&=Ksdd-GsJW{?yzzK$i&6GYAP$PEj}@ZuQm!*85|4X8;Zso}Ow9n8WDa^fj|$Nj zx?9M`YkV`rq>;fP%%Y!$j$Rc_7gb7{cU{Lqr)WpxN}dIZ(?{2l53@S=CYsGxLQ^5r zQ%;YqYmft2SKb<_4-0XE+(VoC?_(`(7U$Z-Rfb4H#T9Ao(IU3FpeiL<8M|GfEiN`> za^Wd-nRU$zP1=HtJ3;_;B2|>(Lwek1>d?>@z41@>`4`#%Lk9c$|*&>QIPi^ zPvfJ>!4wYv2EK}qdTSA2xBD#yHW@7?&6OR+*0p{UVls}9iK z%mg*kOmDfGi#rl6hWtKxMK4HRf4fawIWC1h#i+m5Yz4Un6j1nOs zGUla&+m%!!KuH(nY&CTELhxs_Z~(`LzUo))T+(7~-TBviX}3t;F*L_LxTli$eFivM zhIGRW#;^F|@o6U#+hdEe-G!dzIXn*XI(h>N&H-zlZ(7J|Kl_?!`5=?Q>QvdoY*G|o zCLZamd-*ivzgcerxUQF>PcHS|ZtmuI3hSR-xUaC4IT<7#Je)}*`V9|e{!Z^U(t=i*rYTpbbSSP@xAb}D$S0W7N=!K3Z>2H2->hNtOcRe3#0ig zGI&&eXgGAA*;MY>dUZd&KI8M2F@s*fv-wz6-pI>M#$S%4EoK~e&^5NH@WD)WJMq%w zmd-srw(n?iBif}Vu6%zl-bxrUx-f9(jH^wNr0S-Gj4YDZPnRw|y2Xpv#;&zEE8BN6 z!`$=vMo5BWOk3!mok}EX_YT%%)Fc6^1JM{G^J(KM8hFT}&lw*pokq?UpT=Xu(!^!v zA&R>BFTVR@u*P92X@g3$@m)6kl=3a*k~U}go~_5+TMr(wmRZ5q01Uo1+)kBwUC?Xh zs1btf68$NqE)ni6^!d@`Qj-SH{M~OpCoIjsZGE9?KCoA+OsxMhu3ouSEc%JG!d1>y zy{DH+IhTd`Amm(l^cSj#^3?gS_2#S;;Thgm-W!j=a+|XP$J?vr^($m-h{DYZN#W*I zq0Ba3iW&GCHKTsK$7QWEXukF++#0r)5|b^LnWXHl)$08q^K|F{IW4km>axCSm$@7S z)r*A@KkD3xl))ZVbkXM@QVPKmy9|tWA`jbgzl)jw37n5HeNP%_rc`fp?IwuBMnQH7AYEwsjvM5OdN2^+#|K14Slk*njm=Nzvd$B>9tF=>! zYy7%KS4kJOt^XSPy={CMV9n90=}h3iXeqAIS4V50`L3We2~VAZOjDX_@niS$)ei=P zDk!Q%D@|pt>NtjJHmPARDA&t}hP6r;n017F*A6 zK|9zlQV**MRu|jf5R3FcuX@e!W+oXD>j@uB-|FsH)%v|6tpobHl2)7biAql>V!zyOmu{vh>g670d^tt%aK*8;nRelM;i5+Ow7nk zlJ>2?gPLL1IyoV&b!+-YX40%OF8QTuufb8j*zY;23Yfj5J#)g>8EBQdq{p*I<<^Te z^UyrrRAgo9q?!gBk|KCAjQTVzBV0rsZV!W#q!%OUqTolLN-+aE;+fLOo5-Z=S7X0t zfix2w-Tc*UxeV}(f1U$WV0OS8LGI_6k%)Cq3Sg6&+S!+PW$@~3{%XDlE22yjht0qC zM$w=gVQXJN5FF&RelJ0aM2y^R;VV-HuhuSowLiXi0x)HEq(zJZihb}zgzFA~Vx=`` z4p{fUx*~-zvO%=XKN|YAbc-#+#DGt1%rpdBfDN`OUdo77%;8AeC~QY=L}O^!aM$EHU5>mj-cALmZ>wtiDe&w{|#4~G_9emELMSVYnLy!G&sp{jAcU`A?%QIz=8WDVR}iUojM^Rw z4Rt-3%Y~+oY2?VgbTN z-FQtMoK~dRpYFWH6DO(}NRYZ0KnUUz?1Swi(A1$VGT>228*SPc-Ca=H@77Qfyhq=; z&oRQQALNFJKZ3-k@~!0`Grwp6-g|bu)VJ4L38H=%A$7PZzGJtDM@AFPp*EUa=r*79 zKI+hDuSG!;b>ORdDV`Dr9lPlE5Uxw0IGYh~1lP1s48)OyhKuHB5YgymWf85_S|Puwr>c?} zs!XACpU6)Z-zxn;lMBvB>4*p_B!w!r4ZuzlP;o_7&o_xrr$e-IQ7WxPx4`)Pd$$Hs zOY_F~wG4Fx|E;&947#9Lb(4veMvWG@eCVOQjDP{*QH>s4C%>SB>$MD&m*7un^NbeBTA1m zZXVm`yC9-*8tPj1dC&Svwk?FwJFbPGj}wYz**Q0TytFqdw|tbD80pj5(SGkCG`)0> zLGd6kyO|~(6gk`*8p$7n`fM2(m^h?Zmm_)(Kc|#(fsGyf3x9GGqtIw{OQ()e4oKgO z2|F+h>BaNL`ay zh^8Mo)FO&k$&CPyd?nODZ_c>;$KC>v8tE%>4u0TI$ClfbXO#Ei1C$iX@mYQQuespWf^pOp0;_F<4LeCuN3S%Ok*AmwfPw_PogA%tA_3 zog%o4`If|*(yKGY$vC8qS5zyCT#D%ql*|a~DZ_@S+J!j0dAZ#}OlDZ&`FTd@!46w* zb_Wf<9j;8D;C2-96A)R z)1h||+lI--wB*q$pQ#@_>2QM7gb=+?in(4v zEJqPr09|FoNX(m>%|nK?`2T*ZGTYiWKZXC+Mu6<1zt?NhUika2NgL?zk@`P9?XNw4 zeVrqHT&LF~%bxCDB>b8B3wZU&d$iR0rb2y9lzP}_eTHKA|u8{Ow;iT(P+PZ#g zQ2n&k-Tc^L;+9&DqBWplA;RImBE;YNtxI>?xQnKL>9;cfIE&lU^IN}_=1xMU5IJ%`mNteM*c$C9Q|8icRlvqIQ>o*W-@6D z2-6W=OcEdczdC({KEnFtx)_=8;=`*0qqgRok6l*`?A^?yBpGoK(NmQ8IMA~BNfHas1f_y!&FDOi0TlL@k z2y_;t)o$MIeh%~8+*R~g;6`qM+<#iH58`KF2>@dc)ab_(#y`DGKF$Fhfcvimd4Nw^ zC*p-;`~ZjtS+MKM_3TpxA45Zr?{Yt@+r=QX;0Rn`#fmcQZQuh3irp}`e-E3KBN4W% z`B_NfdlvI8J9!*IJEc~Dv$7Nlp5snR;m2CBh&fqhE-c$}J=~owWRcWJPV;>IO=#Fu z%WW+!=VJ(^yy?uuoNrt9* zS9Q~d`rMy@zo(Bj#bv=IJ$9^|;F*xbW?9(9e~5rO>qGE7<=P-~kUbQ(YFeXgf#4CaDiZ zgv(S^VFvE_VpnU`+-kY5Of97~tCDwR;Bbh29+ci|X9X%PDH1-s?!6w21j@ED?9i@xy&Ll^<01)9-=rL1{wy<;ZTFGFL6%$)P7XX&3ea>!U5N};T&ZJ zzQ3?NWaQSLEDP+u=sylpPd2ic_`mrLW3K_oVhv$-C3U1yAq1X*b;Eq3dnvGv=6+* z_WIv{rh3UkCY~hi>r6GP663J^8ea&w4T^@4CFt9ap`bAYN1v22Xu}dMV?*gB z=9ZLvIQpRU9)6J2%4$fv7lip{ z8GlQwV{)i}TpC;`@s5@+H0TJoa&!t3zOmN8JnKXkoP_q-zWzA5CeFU?6<0(?^Rqh_T#!-)>f%q)E{BwCAyngD+<5BpybvF zF{eU(V+c0|Q=U?0;+7|Gs2VcK|3H!Re|!ZpFD-ZUgKJ&`Pdos!{Tjm3m@?dO7#1Sn z8fhy2G3uxrRHJ*Z{q?ZsQR?gV429c-P_OqBm5cq4jzwt7ZoR675a|(|?B|Qtz5E;r zdKSF+bO!Xm+H_#bgKs4alds(3_KEgA-)q@12FOtueDLs9V}9X#|cI36rdm@nJ`$DIIO4I!YoU; zJ=+=(s^==m6&LfkQ2FP_QrK_DE0B(^LjC*bNaBq?x~IlIbdd@et*fxjcT&kv*Q6&_ z(>;?+^aRye549crBT#;u z{~4%Z{9ZzZguo0)M~*=KA|7j&XVjW4tx*MPRC-e=ps&@UNSF6V)oxoZHHVKZSC<7S@=X+D4BHni zzq?)5h0v0g?O4|CKb{k$67YMHImRE$;I@Xo7P8BG{}~kgU1JaNtTq*0mOf^y{ja!- zgi)JP)8)W#krFAgnv(iLnaPIk45GemgcYQ|)PD{i(hR$ri>!r~f2@Th9Q=Q29VGm* z&b>Mq$oxAM*$iEi*0?fpW_HR3t$wPd*HnNYBP#3ugK>LhE+2iOV7?Y+U>8RH3xYoE zleKd&j;SVvI#k*`9&Cik$ewYoTcV#uJeue!e0bjtx3}-Pwtq?U+P0^Bij?a~7{J&Z zvIva*E01fUzE)0cyphMTyWIDqKU4-%x1<%6^ilg4w8-va=12eg<4=I||M46*f7BDK zygR|swG$#U4##gbzitS*17TYr=_0EgG)QTs&>CLej3?!nsqa%eqIUYb7>7@m!)B1C z=F7vuP?Cb|29{DBD*=6O(Sl|{B;XX9Pyv*AhV-c-@^L+{TnnvB&6*Dwz!FyyI6_+E z&g(Ym^e4$tvt9rJ&?1vzkWsUC-=h!3)UIaepv*+DQb68P^4#O3yd?|pqa*|s3r(h4 zQb<6V!sJ*glQ8tk@%Zfj?m#-5^7Vc--=H zwX(va#hr7-+!wMX@$zYny@Mz42;wuz*=MDn8t4$5@R3jl%Ji9Fq^BAo1;+0s9w2E~ zLR1#%GcH}Lg6g)pCp*vCLBe)M-7JU}XXIwsw@|SK@maDhk4o5*{KuPXgu(G? zORVXa?*#X$a_-4NdyLkD!7r2Cu6BSpXVv2odPmLx=-VB4_I=b<9pM}H=l6l@(5+z& z^xEe1WGhKXW`oIfAg^_}0%j!+EE+0%j%8BwMQ13^1G*d3!8AmU0jf5hGYG*E5r?qW zx73za^}F=D5%s~Jfar0B#$n1Cz_MG?n#LFZ0!K01hCZlunFbz*mfs@DHt>K^d;e_a zk{#%w>S5ZyO6ZzGzGw-|8z$>7wuqXeTER6V8ImYhf(o1%&jg=mvp{XBZPC>?DNdqMb3ov~C`4_-AAfF18*n7)_eEqvkSij6L@JrTKCTxw*FXN(xBjzu_B@NE4GjE4 z^TMCO24jBV$3iLk@xS_4a6r@f58wZnzw8@CT7)}W5@kD~$2PA791;M^H*sv1SUeYg zk`@pyaF{pB0VQ-0wU(Aj73k-)S!sDKW!Z5=7}PrP5K%gG!?ra)yL}H=`YsOnbSMZI zxI@oq7BD(=5ZCSrsIqiA{%}O1Ttl$UD+aD3@j0&2d**3;$7BpR63Ju1XB=Bq;%Y$f zfL$#WDKJJfnyeT|eGgDg2goD?kxGDaoZ!+jNv-wgmck<^QU(%d*{hT2)dp9c3&iii z-W^+ojBG%SbHYq&<%+zXPklOH{6f{;wZ!`e3L4gMs@`o|&xAqOiFyQaLIrpZzR9d26|Uu__HQ&m%_OZvwFE8dfcx_=ORj-y8r&B%?*d z_W+h;#{U@Rp5hUfTKyi}$q{@ev{jpArm<0D)I5r+Hc7}oMB}~OVAKKiIE#ox>7Jal zyPs&bWZtHlDZ?+nUVFWjEUTzd;{yfGgVCQrAfe7AYa%8w#d-)V@khA}~0IKc#bV!M}rrq83Aktnn0t#@S` zBmu%AXkG^*W*hGO)=D-FmFW@SS^Sv|yLM!Vh+_py; zKn(l3+Ks7D=exgw=d@f;dxDM2*Owozm!=5_e!C6Z!rm*AHg;O262OCMchsVYh)UQc z(6qo}VP8A#y|xm#z%XhAHR-usthW5he@x!KyPmLZh7b^3+)eC-+#ZUZ4!R+5+&6FN zr1n=xgq3fVGFT%t+Ij(n_1=SuDHQLG<+AGe@#Ns1u`0YM#GkoYJY|_N$99>m7~tr( zMk^~Sq)PqxOota6*Tn!il>>ix^Tr;QB%be0oHW8V~LEC7AMxOI?pa0`dm!TLuDg;tA^Gid)St%9tGyrDv9_aN=F{2~M=M2H*e4pdHFkKdhDkR25|a6WCP_v&o? ztm)rCC@n7;+bVTlfz$MY1nb@?_X7Lve3oz0&@3Mr=42>!v|xDN+a+kwPvt3T`sJZ! z;a$4$e1}a(T>veB%x15J!lnxKiIsu1D#QfOSQIrnv)t_6-?Wc&{AAd2?uWM)(=1DM zP?Y&(VxgCDEMo8w^v>Y|nY@dRbE`h@z$|ZD?OCSOF<*HsWHF2#SS`sBX&K%rXdzbs z`cX=k#ZX{{i|ieBZLNFzvVnK{*>HB|yj0A&MV1i2b#4!p@TWQ`KT^4({s4TyJwpi5 zPh>(;Yoz8oG!7Rk`_Xf*oAHt;IH8EK>PALaw*?YMnlndHy@(r zZbVFsMHHbq+awt`@I`nYI=hCe$Q(TW&Y;HMTSNQvqrepgXiTPRS+5742 z%`_T&i+SEy4fm*pj8L-!sKC1|cmMvEqc-lECMr}Qc+iZUN2yCq3+C7wFU#z^kA@A@ zKR=tij2iW+D2Mg4C2?ah~N;h&(}lIJnO#2W8bK5whSXL_VEOUvuG~1ANEejcL`kG-?G~ z=B(fv7tfQM2KAYgHLJG5-UwxuvP<}iu@iKT-Yst!n2p(wM(L8G{RSFypj55EcV12ck zZD2{_{P%0Dhvtc<#IT&{wY3AY1er}EThwLcp}6&lR!2TVs03+hr5Umsc(Z%Y1dzCE zq{-ugo_(rXwNgC3NZmM}Cr#}yKS72k+EP#UE9;xfH-Canx@41yKhaVS&kn7w#! znT6l;c|U&j5*<b-^yqmdVk0+8){qD)ASF?K;%(I6K;yPtlKFEb1zqjdbleuCu z+ns5$={I6%WTpjmSzqSooxb92Yurt`k0s0m1ca8*Fp=rGvM|x6#IFT0VWk@oYdaw$ z<*>e1fV@o7(iC37pbI!j(0+ika9gW!_=_QWhwTT&PpFwemv&r*8&U32w&WRloreGf)`@Yf1Pq5JOWuy9vA`zOokzXJJg_-k0^YxJy!k`kg4EvQ%U2DcbhmW?DfM1 zaj~rM;t|33doK3Xy7dweY1<-L^uM+?*n;SK!K*8aQ2yp<2uof+t54SG{!=$E4@dv) zjP$HDWJ9}lv3cvEwjiWE9s1z~Z^nQCZU*2krpHQ68vgFHfgBa8`SmQV;I+wcr5Tj~Roy?@g zVyIy(8Ae1yYgx4%yGEX&gq}{C3Tuw5iX+#9KpVTLIyPvC&TlBkLnLE`1tMO1cswYl zfuQTRL!+1EjVIw^wLxhN0&eoK#BEq<)We9DkxK7XMhth z{7Pb5?pM<6_N8mF-J7~PxtpNM$v^Gl2kWOnPfSmbbaE$61lGRlxd%*K%koJ|#yk#$ zmZ&;Hv;Xu7bydW5AU)?OAOQzvNA#QHrSf`8a(+k(S#^ChOq&3CGrkH?PMdGl$;J8( z)*F(hkm6d!OC|=&CYIe9AB1z;@==3H+i6Ut8WC7$nz930Ln=p1edM)Jc*Myi5aSqJ zW8Zy%TxS8-|`iTVwAwX%`f^oGteCa@wmAgzeV!46+yISigvbXL}VQUgzv)&$5b^$Zt^T=x< z!;45jDFb?V2+`XW`d&i}NQYM$&2*1Jo9iufIz4UWiooMAdGUN!;4Jt)?{15uAh}K| z>6JOO{9q?g-Z0FS&{{?xd>Xvp<(RG!IHLyXPH8jh4}+xIS28J&CA(rTqT6u^M4I1# zD`L=Ibt|*Q7fM@3XLlH#HyWUmX1yx$?4%sq`gQUp!o)A`ZR9E&AMFL6hl0#IMaLhM z{rWzS5c4Pl0PURI;1GM9-A{p5w1q5EnQ%&?^2t*FJ*Q)of%%nu!hlzxz45#oct(7{ zjxp;`;VOV(5IF+KfqZH)hI-iH0v(wrEvz?a?N6?CBHPBkA(lJrF@4UZ) z!%plZu;YVv44s#%IETInxJ*y2>WRHIhLt>PW;apammn+-akGiVCno1ZeJKND=uU%f z*oOp6IzbCAMfUWWDi@oM7~vMTHxjkySo}xDr7=k^dY3&&tNy`8o)nhg#_xSAg-J9vzSbi3xkw<-%lQ=4W@HXr>zixiRd8KH%f zMlT)$32n(AQ+_LJW!w6%u-^+KUA3B|`-x${SS>}Q?t9MsFbzERnL9gN6G4G14vImH zoYe4}{tEo+gXI2wIW|%Ks-5VvyOwTp8jj6+Hx9w(pGo@1zc~R2*|onadj>Paa>_dW zfaqySb)#*Ccb%_7IrxeGM&O!hsYL2%mKV+dl#D;W2t3Q?s%K-K!Y$687}x0iMc5F=kKSeBi|J5 z%_uRw-xTcu&W3Ub$o8<5np+2xJLf>ksT)M%>UdJ2&k$R zXah?ZEevjBi!Hx=&zMNP?>;f+J4&Y}`KTLK4=Y(=tzL6O>#yGS2pOSMbJT<8_@TlTWJg>s1LDZ}Ey{C%C?>q4iuig3h zd$3g6Vq^(b$9JT=m-gHGHe80nZxT`94DNSu@47VZzDF}Jz;kX$Qe!34pUoo0_8hpF zVlpeb`u12DDgGYS|0l@~GK4cVHxu=0^pSZ%icBsbB)tW%GKe|OO|XBI`?-E)YJzXx z4c{y%|Ae@0yS)q662y`|h^G^luMB9>wSsasYeq9hJBMd&YYS|Z@)M!v<&^_ZkfnJ& z&s#5_L&1(_cx1s#7MUxgVtPgCKL#?P8Xfsv7kK+YuV|M+G6U-fTi`mq-#^8^kk8EvWJVxYRLuY% zpUIJNi5ZhG+3{zf%(yz-s4>~x!LkbTcgWuAF zqQe$X(g?7nWtQI_%Y;Id@i7p}L<911)1$8!_H*N7g+T9fd_yC0u1DCsV^g(kDh#S6ozT#yx6q|$YjX1`3#sO|roJuelA|y06yZP6 z^*&XNS>;upx}o=_YM^W~;s`8Wq%BP=)WPx*=!DiWncBhT2Bf;5?YNRa?+!Ep4Z$qO zyyZxNHi=5bw7QRO(9B`kfDEXoSofE2NrqT)ym)r&W zqZ*C<_zY0vryM-Z!4ZSW3B->uYFAMW5C{Y>i_Kn zdG3ReFIrn`S|om6Y18Q5Ak?8IC_!NO{O!jR6Ipp(3T%?gYGEw;oyw-QCPYrfAQQZGNg^)v7vb)NhuG2v;f|x> z?e<)Fc&88vEyRRUe)(gRAl|A?(`{AE_|!ix>^yTe>GBV|utv zLI=d2N=AN2>??FdFJ~J){5=_*COYb9pRfb@4o=bUU1RLHj5%U z$)$rgDsTC~0K}P^MhjJAnJkz+$4&7!`)wsBBM$u@bc_OJ=FCeEc5!?q8ga5dZW$&o zWu@s5+8aC2+Y3NptyL%-C1M^dgS8ACJGGds&qtqm2|1Ob`;C%m5zMCdvm+~9rMdN) ztr*4m#gpINhE}H0d1jrh63Xu)6X>0Z3=fO?_|ZQKLk0uH%Ew@*;Q!t?-}1sGXm1Y%B^ z3X0wU))e80HDXu?=B)jAf3-~~g5Gw#W6Bed^QyZH?O4L6hV@BZ&;ZYNIU+1d!lw_C z;jPbAwt)BmY>tqI9GW~#B859~_+1B`fY)WjdekQ0J6I(-<#Ce z0%HSPBGTvZ)J7vq`}q9uQ`HF#e@=;1MA{&=l0`pQVj6r-Equ!lSg!qBK(1gt4_bRlf;1upN7iSbAsDliLiX$Btml@wBzN1 z(t}(N5MugD(k>0dS9QRd$+2?!0j(+b?-BRHC@p~=9Q|&m1f>Mf3u*8>+>> z?F+BJXlLL$5=Q6=$M);3Fx!4oEvX-+aYO0oBHcz z%AjGv>|#GFxQ5W^V5iLZn@>No)f8y+r!GQglT98+D?(1V=V$V5DT!KNBM2`nrV(0od(U|>0x00$k{2huqejt=mLz}BeD6*3h8zQ^ zP$!rK3ds1`TsADZc}0E&!htr6^SV-KscdN0AdCm0RU;8pVf~QW$NieY0(<_b=;C;Q z66V=>gg{rW0ZVz6u~4;KqFnQU>lkaLp;+bkN|ye{7hip-$;j^9q}K=f-MPDif02);k3X}9dSLtf8Uww^_u{R`-eiF?Vm1F`X*HW}xgK_7bEElkXCNF-IbQllbJ4Nmq?2e*!h!%yQA9VVEgTE2 zrr0V{2J`D69zIY*-PBApTMUSan;xn6*!Mf>5-;b#Xvd^c*Fl;3!w$X~i1Ty}4YvWW zfOKD1kKuZ>9jg%z>i=I3LzRYIh5jR_IArUHgjqL~gX-{K^*&RBN4C|C>O} zV3LL_thCBa>AA2D3sHyo1k@wbyFuYGbJ)v|zq)E?+8><||MjJZ*nS$sirTmXoHaBf z7D+*QKpoT1+b!IlRE7sa6Vk+D;8?9`AQ8w-w)?DI^<~pN=Wbyu)>}|e6FwOzw|%Ol zcmDDt*Ml!5&D>?v1>s(WIBi^~wiWnH+|0k10<}&!ELd8yT|pw!8kdd1Q6|k$>M02&{Chj5jpP0|M&-Xfp3inuFd|jBeD(G5 zZ@J}(%oR%b)o~C$AX5k3y=|_GWCLrmWSo>Es1sT~{hCivX$gDjA zodN4H9hv&k$-yrqSp_nSXV!M#NsQP#4D|wK>ulINP*tFp;YHq%^tK!_#e}auk4QC@ z|KV)>x9|J+B#$hHg0Lok)lyRQ>03$BlAb8tDvxq8;DE}jF;abD z9GbW2CdU2%0g#?Tgr5d2{A^c(Z$a2(i8u$u{0&JEP+|64Y%OF&R++2XKnq1uY;`S7 zP2*3QTD;KG&WGKoG4!Bvfs-FHAGlw%jjzJAkr|ql<(fA)&wXcxLqE#CFOvr%yCL`t zBXpG^n=M`89@4>!pF;;Z6$6FrQ!eEWP`K?JtoC(mxzr7O@tD>s;8C1Xggw}zK{fVt zB3R94H-J8uZ36(m(7;&0K1$hEVA62YU2Gd91qA$`1%yxbB4yC=pRBr9efgE^?9JtLwPZN-WAl0lS<{1{ z4YL7PbPeDK$7R^ZSzXySmJDrP)>}~=FTg!O6CS$?OaTEGiGbYm(0Hj`n#RF?n-$qj zQD1>_(4}C6#BTuJ)?JR+o+Rl>_*8%dSOS^1F|z6#(N)F9()F<(mdD9S1+J@#VmS)e ziXePabYDy#UmlCsK_af^zT^|23jjP$vyLc@XGkySGvKTqpFy3FA}u|p$CY0pdGtK4 z9K0=h{b>w>lf+7o$5jbpGLATmYqCkCPO3pT;v}ypQU-;J2(>Y4lFWd>z%X58JeeX{ zHAPmK$~;1KL1Yh@Mj!+)x(j}CKWgnwDcSwPwx3*l7Jt&l4*KC5C{v@QguLQ z*?f`b>dz%rdvcHJnQOj&T-RG14@Y;405?q!dMRsa?Wb_k9Ll|e_%Dj&A5Q?~CjHD$w8VvyF#{+IwD`zrs9gQ(tEJWy!) zO`Jd7uQ9uk>V`Z?sAGaL6I>+HRs?1aUY~t1Pa#}S;gA&Ddj-P5+J%-pyKk5~-P=j4 zSoj<-lhEE(Kplea1*+bbc$nJGChl}hJw8te4=ry-I(e^V9=eUiIUkxo@tpL8sCkHz ziK5nudro}}p;wL^w7!NT9V$Pejo+$;XfWz;5^B1(>}AIo{__hI5$=rvHoBu||1C;7 zq(y@w%=DlnNG`Z#o*_0&7y7(7{%duCm#{ey_;cy`*MB@xF?eX5nvdKQz07ek^&<`N zt2Dp-UW&6jAb?<>K0x+N$b?0IoprF~$paB&dAy@e@n5Wu@DKltYR;!KVo z78ub>6nT_ncaqd@fU`^dnm!1F)VeKwyEgCaz34pQKCp7YR`+j@&(uaO@o%7O@O9RO zPzd!i9zNWG=ayPNZy2Wt44L>01P_Eh$;@D{x#Y|ZPn!u5^fHZY^qzNyQi`(?=pXNb zB#f5pbzB@DAGF>%s9%d;q{K8@5%y}b#jpJs!@vH3Z%w|xN>(2L=edMlgyeEIGjtfJ zSj8)oFwTZL1AJvhqOEcRJdhW9VSY?%ElMO<`6Y%X98-ggimQm>#qkS5qk4V3ZEC7glD}Wb%pLi>+AT#RjI`mj1GcDdrm(2nUu%bm8 z1Fq*u@i9ae9gkmn%k83d=&aq|=hWrI!@Klhu~YY6DfP}mSb>Q5rNlmU*BssA4(O9! zP6`;7nVOUNPMr2O(xYv`iT6k$&Z_8@zG)Z7eg=2qEotcC;|$uu$7sKzbf|18q!SV+ z>ptt!zHl|Ogam|wXXpf_;t9~wJ87F#1wxRMn8fONVEy^h%12*3tFUcgxyjjOc4xtr zH9D_vTPs)jJ#k8eW%Sw#It#KzE%bXpc;{Um*w%;xYdKJXOTbjx4oJ=e=SW+EFrKV6 zHFw>H?mOMuH@XRAQZ$4g*MI`Hn$&Wgs>`0rxFRn;<&N~AnUoi3 zzT4W~hXY`XcYld*-A&{Lq~1JTd}+>AO*jDU7&%_JS4XQ7%mB!jh>*d`{20&*8Z>>FQHd$1To zV`C?=Jp7d4h$~F2lEKctVOxE|f4y#DV)^|n74xzw?z^|;~tmgk%;*#A;@EByv!JaU%dOE5dGyQT8WQX$?5xODGN>DHGqP6 zTwv2o-?Wzw((3JWp!w}OM#+0AQp!is&4?k^|MURWp{CV`g+zb- z756$y%)`CBHzgWRaeB>X8D$`{aS^S!x1bbaAOW4KnV^+Z^0hFYm~C)>J0FLq9dHS1 zk0d8k%l6L4Bpk#QaS@fo8x7U~g|x-C8|}7XwWeO%T`pb;56BxAsiDc~SAM0m760lM zp!5svoaDD3J`@|c5iF5Eu24Y~t5?OI&?x-AuJ=>p7|C=9F<| z0kV~nob7y}lwQo^jk8L8d5pf|*tNGxmw+3hyhPenDM~|95r^O$jywjJ` zkS=@aU`t8Msn(Eqi)pW04=W|+FcC*#KgzCTo4g&r5=(5zgwVf4f;b|-_2~ID_KyXL zgAXf+4yc-=NF^hGweaduB0_V`IDcxhdesm*JRA_E-(l~gN1Xdz)4Wv1{FSjVLZp(9Uo*rKzcAc(e*nd{aRFu_ zT%H~yYE*8E{33Qa;qKd4+DFR1*sK9Xnj2t6kRkQXkbtJ32?$vFC#`QKPTGwIhk@K? zu+HRQD)auec644s&0&QIm zaVzhRjxNxf5vPPXORnQlbu` zA%7r7WG)|g;xJW#>P}$qoxEMuj8wx4<`LfYrn`u0SZsW^==u4c&m+^ID9orQmUUZJ zh2*|5;`?{3pBVWKKW23z1+z)qGi}niya)QS#U%(*CY3tOqG~*i(VT`r_VXO;$ z>+S{s@nOJy##z{_gCeBt0s@eBwyl(G1)d zR{S|ZmIte$C(E7+j+f4_u1>ERqWSv1-K@v;+T>0KvoLTStAkdC3F|~_d+)_&n1k-_ zz2{jVHNgm`n{z#>cn+OvA4<}yeWqS=9PPNsLg=Id40Y$N(lto*3h}s_V+PL2D)^=o z@RdAkHpWGMnds_snD2@pQJnEO_@>Wcwt_3`3wEQ)(znm3=eatshznRT&LuO|w82KV z@s+c_^u@v$jXDpgm#sJ^8nK>ifSfH_M}f<%MVK3vsuWM>Ii|b}mK$FMZlR^hOGH-g z)jVtRzr^Hs*L~ucjoq$tk4>}lP?<+txs@PI|5`P zn+YivEmZ+~x@Ek{qq@yOz-r)xRV~-$8Dx1Oo*D8Q&>!bFsM={^nz`G7jy8`Qnp&=N za}7gTaUk!J==DRmlOI?=Eerq6;VD05F;s?Z%*(G;TiCX8rQp(Q_q&en*8k%!c*@de z+l*G{Oz8TURBi7`9<17GPB!XWyge5PixW{oHtx|G!~N~X4+@cci9LO*MrF@o9RIH9 z&tU{$Rm6IW2TPSaj-jmHo&C#}BN|#@X??;0+fW05^IXA`q#Qka`AM9|rdQp{Ygo zUtz{$3Z1H!camarX8-^hroMWj+9cJxt&*Z>XxuI?UT_R1k$&Rs`Z)}bwUSm`^NUEV zY)eFZ)i*!_y5cnw11g9e=glp@!XqhI4g7Kzy-#NGQ7qsRQsMHk&4LlrF?YL^SMI88 zxgR8-5o=>l{Aecm^gAz&A7|5w@DBn8-DOJ6YS6lpVDun;ig9_!%lk_SKi9Gc+e5kD zRlZYY1=Zw?acD}ApV+w>8h&_=3Ui;$D}7qz%hR0*Hg&iaNxlxcy7&ShMRr7M^FRLs fM<#(-Yf^nqgzJ-Ad&S}3$hu2rD`M{> diff --git a/docs/images/graphs/dep_graph_feature_foryou.png b/docs/images/graphs/dep_graph_feature_foryou.png deleted file mode 100644 index cf483f1b11407cce0ca8374933d170246823d3c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47982 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 SQ{HA27f636p-Fv&p8~{>J8m5N8p6Y6O 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

+#aQH~(p`j5M~N8szX$o{ZaVyvXs*QSFFn}h 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 diff --git a/docs/images/graphs/dep_graph_feature_interests.png b/docs/images/graphs/dep_graph_feature_interests.png deleted file mode 100644 index 09c74f995609a347bb9df579ac06baa03b5c5b04..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47995 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 I%3tyRUsYz+jsO4v diff --git a/docs/images/graphs/dep_graph_lint.png b/docs/images/graphs/dep_graph_lint.png deleted file mode 100644 index 176d1de5d27a9671a0647be71b4fbc8819dad975..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42802 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 diff --git a/docs/images/graphs/dep_graph_sync.png b/docs/images/graphs/dep_graph_sync.png deleted file mode 100644 index 26b79b9bc86e9f0524b67d80e0437368b589d1ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38242 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 From c4642cea61f4a0f0fad339a134da9b4245f97638 Mon Sep 17 00:00:00 2001 From: Don Turner Date: Thu, 7 Mar 2024 15:28:31 +0000 Subject: [PATCH 03/39] Add graph for screenshot testing module, minor update to script Change-Id: I611f73d59790bde240756e8016aa721a1783335f --- core/screenshot-testing/README.md | 3 ++ .../dep_graph_core_screenshot_testing.svg | 43 +++++++++++++++++++ generateModuleGraphs.sh | 23 +++++----- 3 files changed, 58 insertions(+), 11 deletions(-) create mode 100644 core/screenshot-testing/README.md create mode 100644 docs/images/graphs/dep_graph_core_screenshot_testing.svg diff --git a/core/screenshot-testing/README.md b/core/screenshot-testing/README.md new file mode 100644 index 000000000..bab2e1a10 --- /dev/null +++ b/core/screenshot-testing/README.md @@ -0,0 +1,3 @@ +# :core:screenshot-testing module + +![Dependency graph](../../docs/images/graphs/dep_graph_core_screenshot_testing.svg) diff --git a/docs/images/graphs/dep_graph_core_screenshot_testing.svg b/docs/images/graphs/dep_graph_core_screenshot_testing.svg new file mode 100644 index 000000000..e9fc6d48a --- /dev/null +++ b/docs/images/graphs/dep_graph_core_screenshot_testing.svg @@ -0,0 +1,43 @@ + + + + + + +G + + + +:core:screenshot-testing + +:core:screenshot-testing + + + +:core:common + +:core:common + + + +:core:screenshot-testing->:core:common + + + + + +:core:designsystem + +:core:designsystem + + + +:core:screenshot-testing->:core:designsystem + + + + + diff --git a/generateModuleGraphs.sh b/generateModuleGraphs.sh index c759fea30..f69339502 100755 --- a/generateModuleGraphs.sh +++ b/generateModuleGraphs.sh @@ -14,12 +14,12 @@ # See the License for the specific language governing permissions and # limitations under the License. # - -# Script to generate dependency graphs for each of the modules -# Usage: generateModuleGraphs.sh --exclude-module :benchmarks --exclude-module :lint - -# Echo each command so the caller knows what's going on -set -e +# +# Script to generate dependency graphs for each of the modules. The --exclude-module parameter can +# be used to exclude modules which are not part of the root dependency graph (and which, if included +# would cause the script to fail. +# +# Usage: generateModuleGraphs.sh --exclude-module :benchmarks --exclude-module :lint --exclude-module :ui-test-hilt-manifest # Check if the dot command is available if ! command -v dot &> /dev/null @@ -47,14 +47,17 @@ while [[ $# -gt 0 ]]; do esac done -# Function to check and create README.md +# Get the module paths +module_paths=$(./gradlew -q printModulePaths --no-configuration-cache) + +# Function to check and create a README.md for modules which don't have one. check_and_create_readme() { local module_path="$1" local file_name="$2" local readme_path="${module_path:1}" # Remove leading colon readme_path=$(echo "$readme_path" | sed 's/:/\//g') # Replace colons with slashes using sed - readme_path="${readme_path}/README.md" + readme_path="${readme_path}/README.md" #Append the filename # Check if README.md exists and create it if not if [[ ! -f "$readme_path" ]]; then @@ -67,9 +70,6 @@ check_and_create_readme() { fi } -# Get the module paths -module_paths=$(./gradlew -q printModulePaths --no-configuration-cache) - # Loop through each module path echo "$module_paths" | while read -r module_path; do # Check if the module is in the excluded list @@ -83,6 +83,7 @@ echo "$module_paths" | while read -r module_path; do # Generate the .gv file in a temporary location # "docs/images/graphs/${file_name}.svg" # Remove the temporary .gv file From 6b744ab3c7de43e815e905e54c95e52dec4fbb3b Mon Sep 17 00:00:00 2001 From: Don Turner Date: Mon, 11 Mar 2024 21:56:16 +0000 Subject: [PATCH 04/39] Addressing feedback Change-Id: I9c825c142799cdbb99890d49ded067427cf9fee8 --- generateModuleGraphs.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/generateModuleGraphs.sh b/generateModuleGraphs.sh index f69339502..fc4b190c8 100755 --- a/generateModuleGraphs.sh +++ b/generateModuleGraphs.sh @@ -56,7 +56,7 @@ check_and_create_readme() { local file_name="$2" local readme_path="${module_path:1}" # Remove leading colon - readme_path=$(echo "$readme_path" | sed 's/:/\//g') # Replace colons with slashes using sed + readme_path=${readme_path//:/\/} # Replace colons with slashes using sed readme_path="${readme_path}/README.md" #Append the filename # Check if README.md exists and create it if not @@ -82,7 +82,9 @@ echo "$module_paths" | while read -r module_path; do # Generate the .gv file in a temporary location # "docs/images/graphs/${file_name}.svg" From ed91723e2f9a35556d9e6803c86477a873578f4c Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Tue, 12 Mar 2024 16:05:56 +0900 Subject: [PATCH 05/39] Fix #1270 Change-Id: Id9774ad300b04c17cb1d7668c1ab1bac014bf70c --- .../core/data/test/repository/FakeUserDataRepository.kt | 2 +- .../core/data/repository/OfflineFirstUserDataRepository.kt | 2 +- .../nowinandroid/core/data/repository/UserDataRepository.kt | 2 +- .../data/repository/OfflineFirstUserDataRepositoryTest.kt | 4 ++-- .../core/testing/repository/TestUserDataRepository.kt | 2 +- .../apps/nowinandroid/feature/bookmarks/BookmarksViewModel.kt | 4 ++-- .../nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt | 4 ++-- .../apps/nowinandroid/feature/foryou/ForYouViewModel.kt | 2 +- .../samples/apps/nowinandroid/feature/topic/TopicViewModel.kt | 2 +- 9 files changed, 12 insertions(+), 12 deletions(-) diff --git a/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeUserDataRepository.kt b/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeUserDataRepository.kt index cdd23429f..d9323e312 100644 --- a/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeUserDataRepository.kt +++ b/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeUserDataRepository.kt @@ -43,7 +43,7 @@ internal class FakeUserDataRepository @Inject constructor( override suspend fun setTopicIdFollowed(followedTopicId: String, followed: Boolean) = niaPreferencesDataSource.setTopicIdFollowed(followedTopicId, followed) - override suspend fun updateNewsResourceBookmark(newsResourceId: String, bookmarked: Boolean) { + override suspend fun setNewsResourceBookmark(newsResourceId: String, bookmarked: Boolean) { niaPreferencesDataSource.setNewsResourceBookmarked(newsResourceId, bookmarked) } diff --git a/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepository.kt b/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepository.kt index c0b1bcc33..a781b7d14 100644 --- a/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepository.kt +++ b/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepository.kt @@ -42,7 +42,7 @@ internal class OfflineFirstUserDataRepository @Inject constructor( analyticsHelper.logTopicFollowToggled(followedTopicId, followed) } - override suspend fun updateNewsResourceBookmark(newsResourceId: String, bookmarked: Boolean) { + override suspend fun setNewsResourceBookmark(newsResourceId: String, bookmarked: Boolean) { niaPreferencesDataSource.setNewsResourceBookmarked(newsResourceId, bookmarked) analyticsHelper.logNewsResourceBookmarkToggled( newsResourceId = newsResourceId, diff --git a/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/UserDataRepository.kt b/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/UserDataRepository.kt index ff616c179..c0acd4862 100644 --- a/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/UserDataRepository.kt +++ b/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/UserDataRepository.kt @@ -41,7 +41,7 @@ interface UserDataRepository { /** * Updates the bookmarked status for a news resource */ - suspend fun updateNewsResourceBookmark(newsResourceId: String, bookmarked: Boolean) + suspend fun setNewsResourceBookmark(newsResourceId: String, bookmarked: Boolean) /** * Updates the viewed status for a news resource diff --git a/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepositoryTest.kt b/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepositoryTest.kt index 27e86f2f4..fca625d40 100644 --- a/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepositoryTest.kt +++ b/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepositoryTest.kt @@ -133,7 +133,7 @@ class OfflineFirstUserDataRepositoryTest { @Test fun offlineFirstUserDataRepository_bookmark_news_resource_logic_delegates_to_nia_preferences() = testScope.runTest { - subject.updateNewsResourceBookmark(newsResourceId = "0", bookmarked = true) + subject.setNewsResourceBookmark(newsResourceId = "0", bookmarked = true) assertEquals( setOf("0"), @@ -142,7 +142,7 @@ class OfflineFirstUserDataRepositoryTest { .first(), ) - subject.updateNewsResourceBookmark(newsResourceId = "1", bookmarked = true) + subject.setNewsResourceBookmark(newsResourceId = "1", bookmarked = true) assertEquals( setOf("0", "1"), diff --git a/core/testing/src/main/kotlin/com/google/samples/apps/nowinandroid/core/testing/repository/TestUserDataRepository.kt b/core/testing/src/main/kotlin/com/google/samples/apps/nowinandroid/core/testing/repository/TestUserDataRepository.kt index 504e79217..8eb09b00b 100644 --- a/core/testing/src/main/kotlin/com/google/samples/apps/nowinandroid/core/testing/repository/TestUserDataRepository.kt +++ b/core/testing/src/main/kotlin/com/google/samples/apps/nowinandroid/core/testing/repository/TestUserDataRepository.kt @@ -61,7 +61,7 @@ class TestUserDataRepository : UserDataRepository { } } - override suspend fun updateNewsResourceBookmark(newsResourceId: String, bookmarked: Boolean) { + override suspend fun setNewsResourceBookmark(newsResourceId: String, bookmarked: Boolean) { currentUserData.let { current -> val bookmarkedNews = if (bookmarked) { current.bookmarkedNewsResources + newsResourceId diff --git a/feature/bookmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModel.kt b/feature/bookmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModel.kt index 7b6cac76a..5b1074fdb 100644 --- a/feature/bookmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModel.kt +++ b/feature/bookmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModel.kt @@ -58,7 +58,7 @@ class BookmarksViewModel @Inject constructor( viewModelScope.launch { shouldDisplayUndoBookmark = true lastRemovedBookmarkId = newsResourceId - userDataRepository.updateNewsResourceBookmark(newsResourceId, false) + userDataRepository.setNewsResourceBookmark(newsResourceId, false) } } @@ -71,7 +71,7 @@ class BookmarksViewModel @Inject constructor( fun undoBookmarkRemoval() { viewModelScope.launch { lastRemovedBookmarkId?.let { - userDataRepository.updateNewsResourceBookmark(it, true) + userDataRepository.setNewsResourceBookmark(it, true) } } clearUndoState() diff --git a/feature/bookmarks/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt b/feature/bookmarks/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt index 6469a684b..1ebc1c037 100644 --- a/feature/bookmarks/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt +++ b/feature/bookmarks/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt @@ -67,7 +67,7 @@ class BookmarksViewModelTest { val collectJob = launch(UnconfinedTestDispatcher()) { viewModel.feedUiState.collect() } newsRepository.sendNewsResources(newsResourcesTestData) - userDataRepository.updateNewsResourceBookmark(newsResourcesTestData[0].id, true) + userDataRepository.setNewsResourceBookmark(newsResourcesTestData[0].id, true) val item = viewModel.feedUiState.value assertIs(item) assertEquals(item.feed.size, 1) @@ -81,7 +81,7 @@ class BookmarksViewModelTest { // Set the news resources to be used by this test newsRepository.sendNewsResources(newsResourcesTestData) // Start with the resource saved - userDataRepository.updateNewsResourceBookmark(newsResourcesTestData[0].id, true) + userDataRepository.setNewsResourceBookmark(newsResourcesTestData[0].id, true) // Use viewModel to remove saved resource viewModel.removeFromSavedResources(newsResourcesTestData[0].id) // Verify list of saved resources is now empty diff --git a/feature/foryou/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/ForYouViewModel.kt b/feature/foryou/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/ForYouViewModel.kt index 2a4b6f4ec..c634f8895 100644 --- a/feature/foryou/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/ForYouViewModel.kt +++ b/feature/foryou/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/ForYouViewModel.kt @@ -117,7 +117,7 @@ class ForYouViewModel @Inject constructor( fun updateNewsResourceSaved(newsResourceId: String, isChecked: Boolean) { viewModelScope.launch { - userDataRepository.updateNewsResourceBookmark(newsResourceId, isChecked) + userDataRepository.setNewsResourceBookmark(newsResourceId, isChecked) } } diff --git a/feature/topic/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/topic/TopicViewModel.kt b/feature/topic/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/topic/TopicViewModel.kt index ff1eee319..52aa46599 100644 --- a/feature/topic/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/topic/TopicViewModel.kt +++ b/feature/topic/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/topic/TopicViewModel.kt @@ -81,7 +81,7 @@ class TopicViewModel @Inject constructor( fun bookmarkNews(newsResourceId: String, bookmarked: Boolean) { viewModelScope.launch { - userDataRepository.updateNewsResourceBookmark(newsResourceId, bookmarked) + userDataRepository.setNewsResourceBookmark(newsResourceId, bookmarked) } } From ee4320723fd4e90d2c28cbe3b2a46f3dbed8cf20 Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Tue, 12 Mar 2024 16:10:42 +0900 Subject: [PATCH 06/39] Fix typo. Change-Id: Id3aed2e3c54660fbbb42bc0c08dea68de0d5230f --- .../core/data/test/repository/FakeUserDataRepository.kt | 2 +- .../core/data/repository/OfflineFirstUserDataRepository.kt | 2 +- .../nowinandroid/core/data/repository/UserDataRepository.kt | 2 +- .../data/repository/OfflineFirstUserDataRepositoryTest.kt | 4 ++-- .../core/testing/repository/TestUserDataRepository.kt | 2 +- .../apps/nowinandroid/feature/bookmarks/BookmarksViewModel.kt | 4 ++-- .../nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt | 4 ++-- .../apps/nowinandroid/feature/foryou/ForYouViewModel.kt | 2 +- .../samples/apps/nowinandroid/feature/topic/TopicViewModel.kt | 2 +- 9 files changed, 12 insertions(+), 12 deletions(-) diff --git a/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeUserDataRepository.kt b/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeUserDataRepository.kt index d9323e312..4871baad9 100644 --- a/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeUserDataRepository.kt +++ b/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeUserDataRepository.kt @@ -43,7 +43,7 @@ internal class FakeUserDataRepository @Inject constructor( override suspend fun setTopicIdFollowed(followedTopicId: String, followed: Boolean) = niaPreferencesDataSource.setTopicIdFollowed(followedTopicId, followed) - override suspend fun setNewsResourceBookmark(newsResourceId: String, bookmarked: Boolean) { + override suspend fun setNewsResourceBookmarked(newsResourceId: String, bookmarked: Boolean) { niaPreferencesDataSource.setNewsResourceBookmarked(newsResourceId, bookmarked) } diff --git a/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepository.kt b/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepository.kt index a781b7d14..089b7087d 100644 --- a/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepository.kt +++ b/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepository.kt @@ -42,7 +42,7 @@ internal class OfflineFirstUserDataRepository @Inject constructor( analyticsHelper.logTopicFollowToggled(followedTopicId, followed) } - override suspend fun setNewsResourceBookmark(newsResourceId: String, bookmarked: Boolean) { + override suspend fun setNewsResourceBookmarked(newsResourceId: String, bookmarked: Boolean) { niaPreferencesDataSource.setNewsResourceBookmarked(newsResourceId, bookmarked) analyticsHelper.logNewsResourceBookmarkToggled( newsResourceId = newsResourceId, diff --git a/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/UserDataRepository.kt b/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/UserDataRepository.kt index c0acd4862..c5202b02b 100644 --- a/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/UserDataRepository.kt +++ b/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/UserDataRepository.kt @@ -41,7 +41,7 @@ interface UserDataRepository { /** * Updates the bookmarked status for a news resource */ - suspend fun setNewsResourceBookmark(newsResourceId: String, bookmarked: Boolean) + suspend fun setNewsResourceBookmarked(newsResourceId: String, bookmarked: Boolean) /** * Updates the viewed status for a news resource diff --git a/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepositoryTest.kt b/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepositoryTest.kt index fca625d40..422e2cfb7 100644 --- a/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepositoryTest.kt +++ b/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepositoryTest.kt @@ -133,7 +133,7 @@ class OfflineFirstUserDataRepositoryTest { @Test fun offlineFirstUserDataRepository_bookmark_news_resource_logic_delegates_to_nia_preferences() = testScope.runTest { - subject.setNewsResourceBookmark(newsResourceId = "0", bookmarked = true) + subject.setNewsResourceBookmarked(newsResourceId = "0", bookmarked = true) assertEquals( setOf("0"), @@ -142,7 +142,7 @@ class OfflineFirstUserDataRepositoryTest { .first(), ) - subject.setNewsResourceBookmark(newsResourceId = "1", bookmarked = true) + subject.setNewsResourceBookmarked(newsResourceId = "1", bookmarked = true) assertEquals( setOf("0", "1"), diff --git a/core/testing/src/main/kotlin/com/google/samples/apps/nowinandroid/core/testing/repository/TestUserDataRepository.kt b/core/testing/src/main/kotlin/com/google/samples/apps/nowinandroid/core/testing/repository/TestUserDataRepository.kt index 8eb09b00b..be76112dc 100644 --- a/core/testing/src/main/kotlin/com/google/samples/apps/nowinandroid/core/testing/repository/TestUserDataRepository.kt +++ b/core/testing/src/main/kotlin/com/google/samples/apps/nowinandroid/core/testing/repository/TestUserDataRepository.kt @@ -61,7 +61,7 @@ class TestUserDataRepository : UserDataRepository { } } - override suspend fun setNewsResourceBookmark(newsResourceId: String, bookmarked: Boolean) { + override suspend fun setNewsResourceBookmarked(newsResourceId: String, bookmarked: Boolean) { currentUserData.let { current -> val bookmarkedNews = if (bookmarked) { current.bookmarkedNewsResources + newsResourceId diff --git a/feature/bookmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModel.kt b/feature/bookmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModel.kt index 5b1074fdb..f93602485 100644 --- a/feature/bookmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModel.kt +++ b/feature/bookmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModel.kt @@ -58,7 +58,7 @@ class BookmarksViewModel @Inject constructor( viewModelScope.launch { shouldDisplayUndoBookmark = true lastRemovedBookmarkId = newsResourceId - userDataRepository.setNewsResourceBookmark(newsResourceId, false) + userDataRepository.setNewsResourceBookmarked(newsResourceId, false) } } @@ -71,7 +71,7 @@ class BookmarksViewModel @Inject constructor( fun undoBookmarkRemoval() { viewModelScope.launch { lastRemovedBookmarkId?.let { - userDataRepository.setNewsResourceBookmark(it, true) + userDataRepository.setNewsResourceBookmarked(it, true) } } clearUndoState() diff --git a/feature/bookmarks/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt b/feature/bookmarks/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt index 1ebc1c037..037e9db64 100644 --- a/feature/bookmarks/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt +++ b/feature/bookmarks/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt @@ -67,7 +67,7 @@ class BookmarksViewModelTest { val collectJob = launch(UnconfinedTestDispatcher()) { viewModel.feedUiState.collect() } newsRepository.sendNewsResources(newsResourcesTestData) - userDataRepository.setNewsResourceBookmark(newsResourcesTestData[0].id, true) + userDataRepository.setNewsResourceBookmarked(newsResourcesTestData[0].id, true) val item = viewModel.feedUiState.value assertIs(item) assertEquals(item.feed.size, 1) @@ -81,7 +81,7 @@ class BookmarksViewModelTest { // Set the news resources to be used by this test newsRepository.sendNewsResources(newsResourcesTestData) // Start with the resource saved - userDataRepository.setNewsResourceBookmark(newsResourcesTestData[0].id, true) + userDataRepository.setNewsResourceBookmarked(newsResourcesTestData[0].id, true) // Use viewModel to remove saved resource viewModel.removeFromSavedResources(newsResourcesTestData[0].id) // Verify list of saved resources is now empty diff --git a/feature/foryou/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/ForYouViewModel.kt b/feature/foryou/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/ForYouViewModel.kt index c634f8895..85035a77a 100644 --- a/feature/foryou/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/ForYouViewModel.kt +++ b/feature/foryou/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/ForYouViewModel.kt @@ -117,7 +117,7 @@ class ForYouViewModel @Inject constructor( fun updateNewsResourceSaved(newsResourceId: String, isChecked: Boolean) { viewModelScope.launch { - userDataRepository.setNewsResourceBookmark(newsResourceId, isChecked) + userDataRepository.setNewsResourceBookmarked(newsResourceId, isChecked) } } diff --git a/feature/topic/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/topic/TopicViewModel.kt b/feature/topic/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/topic/TopicViewModel.kt index 52aa46599..2dea8ba05 100644 --- a/feature/topic/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/topic/TopicViewModel.kt +++ b/feature/topic/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/topic/TopicViewModel.kt @@ -81,7 +81,7 @@ class TopicViewModel @Inject constructor( fun bookmarkNews(newsResourceId: String, bookmarked: Boolean) { viewModelScope.launch { - userDataRepository.setNewsResourceBookmark(newsResourceId, bookmarked) + userDataRepository.setNewsResourceBookmarked(newsResourceId, bookmarked) } } From a5025390af98011df60c8ce0c252827f694ce8ac Mon Sep 17 00:00:00 2001 From: Don Turner Date: Thu, 14 Mar 2024 13:36:17 +0000 Subject: [PATCH 07/39] Add title to READMEs to describe the dependency graph Change-Id: Ifb4b44e67df53ddd8ed048122c6c12a904e61528 --- app-nia-catalog/README.md | 4 ++-- app/README.md | 4 ++-- core/analytics/README.md | 2 +- core/common/README.md | 2 +- core/data-test/README.md | 2 +- core/data/README.md | 2 +- core/database/README.md | 2 +- core/datastore-proto/README.md | 2 +- core/datastore-test/README.md | 2 +- core/datastore/README.md | 2 +- core/designsystem/README.md | 2 +- core/domain/README.md | 2 +- core/model/README.md | 2 +- core/network/README.md | 2 +- core/notifications/README.md | 2 +- core/screenshot-testing/README.md | 2 +- core/testing/README.md | 2 +- core/ui/README.md | 2 +- feature/bookmarks/README.md | 2 +- feature/foryou/README.md | 2 +- feature/interests/README.md | 2 +- feature/search/README.md | 2 +- feature/settings/README.md | 2 +- feature/topic/README.md | 2 +- generateModuleGraphs.sh | 2 +- sync/sync-test/README.md | 2 +- sync/work/README.md | 2 +- 27 files changed, 29 insertions(+), 29 deletions(-) diff --git a/app-nia-catalog/README.md b/app-nia-catalog/README.md index 724f1effe..99503ba84 100644 --- a/app-nia-catalog/README.md +++ b/app-nia-catalog/README.md @@ -1,3 +1,3 @@ # :app-nia-catalog module - -![Dependency graph](../docs/images/graphs/dep_graph_app_nia_catalog.svg) +## Dependency graph +![Dependency graph](../../docs/images/graphs/dep_graph_app_nia_catalog.svg) diff --git a/app/README.md b/app/README.md index bbadc7330..f80083494 100644 --- a/app/README.md +++ b/app/README.md @@ -1,3 +1,3 @@ # :app module - -![Dependency graph](../docs/images/graphs/dep_graph_app.svg) +## Dependency graph +![Dependency graph](../../docs/images/graphs/dep_graph_app.svg) diff --git a/core/analytics/README.md b/core/analytics/README.md index c451cc838..d2bcd1ea7 100644 --- a/core/analytics/README.md +++ b/core/analytics/README.md @@ -1,3 +1,3 @@ # :core:analytics module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_analytics.svg) diff --git a/core/common/README.md b/core/common/README.md index 2fbc5a329..96558bcc6 100644 --- a/core/common/README.md +++ b/core/common/README.md @@ -1,3 +1,3 @@ # :core:common module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_common.svg) diff --git a/core/data-test/README.md b/core/data-test/README.md index 43804eeec..977ee10e4 100644 --- a/core/data-test/README.md +++ b/core/data-test/README.md @@ -1,3 +1,3 @@ # :core:data-test module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_data_test.svg) diff --git a/core/data/README.md b/core/data/README.md index a5a05870c..5d30f1638 100644 --- a/core/data/README.md +++ b/core/data/README.md @@ -1,3 +1,3 @@ # :core:data module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_data.svg) diff --git a/core/database/README.md b/core/database/README.md index 524cb5c48..855eab53e 100644 --- a/core/database/README.md +++ b/core/database/README.md @@ -1,3 +1,3 @@ # :core:database module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_database.svg) diff --git a/core/datastore-proto/README.md b/core/datastore-proto/README.md index 0b115b981..19ed58239 100644 --- a/core/datastore-proto/README.md +++ b/core/datastore-proto/README.md @@ -1,3 +1,3 @@ # :core:datastore-proto module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_datastore_proto.svg) diff --git a/core/datastore-test/README.md b/core/datastore-test/README.md index f59e9353d..99cf13f1f 100644 --- a/core/datastore-test/README.md +++ b/core/datastore-test/README.md @@ -1,3 +1,3 @@ # :core:datastore-test module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_datastore_test.svg) diff --git a/core/datastore/README.md b/core/datastore/README.md index e05e2ff72..4785c5885 100644 --- a/core/datastore/README.md +++ b/core/datastore/README.md @@ -1,3 +1,3 @@ # :core:datastore module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_datastore.svg) diff --git a/core/designsystem/README.md b/core/designsystem/README.md index 59f8cf803..d1778cb14 100644 --- a/core/designsystem/README.md +++ b/core/designsystem/README.md @@ -1,3 +1,3 @@ # :core:designsystem module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_designsystem.svg) diff --git a/core/domain/README.md b/core/domain/README.md index f86422435..cc6905846 100644 --- a/core/domain/README.md +++ b/core/domain/README.md @@ -1,3 +1,3 @@ # :core:domain module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_domain.svg) diff --git a/core/model/README.md b/core/model/README.md index c740370ac..efd0eec76 100644 --- a/core/model/README.md +++ b/core/model/README.md @@ -1,3 +1,3 @@ # :core:model module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_model.svg) diff --git a/core/network/README.md b/core/network/README.md index 4106f0dde..516aa2d38 100644 --- a/core/network/README.md +++ b/core/network/README.md @@ -1,3 +1,3 @@ # :core:network module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_network.svg) diff --git a/core/notifications/README.md b/core/notifications/README.md index 7d509913f..8f5607bdf 100644 --- a/core/notifications/README.md +++ b/core/notifications/README.md @@ -1,3 +1,3 @@ # :core:notifications module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_notifications.svg) diff --git a/core/screenshot-testing/README.md b/core/screenshot-testing/README.md index bab2e1a10..9bd4f1f9c 100644 --- a/core/screenshot-testing/README.md +++ b/core/screenshot-testing/README.md @@ -1,3 +1,3 @@ # :core:screenshot-testing module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_screenshot_testing.svg) diff --git a/core/testing/README.md b/core/testing/README.md index a7d40abcd..5a35d379b 100644 --- a/core/testing/README.md +++ b/core/testing/README.md @@ -1,3 +1,3 @@ # :core:testing module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_testing.svg) diff --git a/core/ui/README.md b/core/ui/README.md index e41b50bd5..38e514d01 100644 --- a/core/ui/README.md +++ b/core/ui/README.md @@ -1,3 +1,3 @@ # :core:ui module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_core_ui.svg) diff --git a/feature/bookmarks/README.md b/feature/bookmarks/README.md index 1af65fd92..54cbf91d0 100644 --- a/feature/bookmarks/README.md +++ b/feature/bookmarks/README.md @@ -1,3 +1,3 @@ # :feature:bookmarks module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_feature_bookmarks.svg) diff --git a/feature/foryou/README.md b/feature/foryou/README.md index fd864fbfa..0f08cb827 100644 --- a/feature/foryou/README.md +++ b/feature/foryou/README.md @@ -1,3 +1,3 @@ # :feature:foryou module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_feature_foryou.svg) diff --git a/feature/interests/README.md b/feature/interests/README.md index be94111d8..90a4fbc9c 100644 --- a/feature/interests/README.md +++ b/feature/interests/README.md @@ -1,3 +1,3 @@ # :feature:interests module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_feature_interests.svg) diff --git a/feature/search/README.md b/feature/search/README.md index c793d1543..e205970f0 100644 --- a/feature/search/README.md +++ b/feature/search/README.md @@ -1,3 +1,3 @@ # :feature:search module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_feature_search.svg) diff --git a/feature/settings/README.md b/feature/settings/README.md index 8620a2dcd..7a4df04fe 100644 --- a/feature/settings/README.md +++ b/feature/settings/README.md @@ -1,3 +1,3 @@ # :feature:settings module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_feature_settings.svg) diff --git a/feature/topic/README.md b/feature/topic/README.md index 199a9cb55..84588929c 100644 --- a/feature/topic/README.md +++ b/feature/topic/README.md @@ -1,3 +1,3 @@ # :feature:topic module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_feature_topic.svg) diff --git a/generateModuleGraphs.sh b/generateModuleGraphs.sh index fc4b190c8..27dea22da 100755 --- a/generateModuleGraphs.sh +++ b/generateModuleGraphs.sh @@ -65,7 +65,7 @@ check_and_create_readme() { # Calculate the correct relative path to the image local relative_image_path="../../docs/images/graphs/${file_name}.svg" echo "# ${module_path} module" > "$readme_path" - echo "" >> "$readme_path" + echo "## Dependency graph" >> "$readme_path" echo "![Dependency graph](${relative_image_path})" >> "$readme_path" fi } diff --git a/sync/sync-test/README.md b/sync/sync-test/README.md index 34ce5066a..78876290f 100644 --- a/sync/sync-test/README.md +++ b/sync/sync-test/README.md @@ -1,3 +1,3 @@ # :sync:sync-test module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_sync_sync_test.svg) diff --git a/sync/work/README.md b/sync/work/README.md index f31359e9f..2fe66d616 100644 --- a/sync/work/README.md +++ b/sync/work/README.md @@ -1,3 +1,3 @@ # :sync:work module - +## Dependency graph ![Dependency graph](../../docs/images/graphs/dep_graph_sync_work.svg) From a4c52e6485b7de29700c9d6db36cb5a073d718c9 Mon Sep 17 00:00:00 2001 From: Don Turner Date: Mon, 11 Mar 2024 20:54:13 +0000 Subject: [PATCH 08/39] Remove the search module's dependency on other feature modules Change-Id: I17df9948fed04ddc7ba507b437d39536b8b180bb --- .../nowinandroid/core/ui}/InterestsItem.kt | 10 ++++----- core/ui/src/main/res/values/strings.xml | 3 +++ .../feature/foryou/ForYouViewModelTest.kt | 20 ++++++++++++++++++ .../feature/interests/TabContent.kt | 1 + .../interests/src/main/res/values/strings.xml | 2 -- feature/search/build.gradle.kts | 4 +--- .../feature/search/SearchScreen.kt | 14 ++++--------- .../feature/search/SearchViewModel.kt | 20 ++++++++++++++++++ .../feature/search/SearchViewModelTest.kt | 21 +++++++++++++++++++ 9 files changed, 75 insertions(+), 20 deletions(-) rename {feature/interests/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/interests => core/ui/src/main/kotlin/com/google/samples/apps/nowinandroid/core/ui}/InterestsItem.kt (95%) diff --git a/feature/interests/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/interests/InterestsItem.kt b/core/ui/src/main/kotlin/com/google/samples/apps/nowinandroid/core/ui/InterestsItem.kt similarity index 95% rename from feature/interests/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/interests/InterestsItem.kt rename to core/ui/src/main/kotlin/com/google/samples/apps/nowinandroid/core/ui/InterestsItem.kt index 6ac0340ee..28cd8d938 100644 --- a/feature/interests/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/interests/InterestsItem.kt +++ b/core/ui/src/main/kotlin/com/google/samples/apps/nowinandroid/core/ui/InterestsItem.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 The Android Open Source Project + * Copyright 2024 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.google.samples.apps.nowinandroid.feature.interests +package com.google.samples.apps.nowinandroid.core.ui import androidx.compose.foundation.background import androidx.compose.foundation.clickable @@ -38,7 +38,7 @@ import com.google.samples.apps.nowinandroid.core.designsystem.component.DynamicA import com.google.samples.apps.nowinandroid.core.designsystem.component.NiaIconToggleButton import com.google.samples.apps.nowinandroid.core.designsystem.icon.NiaIcons import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme -import com.google.samples.apps.nowinandroid.feature.interests.R.string +import com.google.samples.apps.nowinandroid.core.ui.R.string @Composable fun InterestsItem( @@ -70,7 +70,7 @@ fun InterestsItem( Icon( imageVector = NiaIcons.Add, contentDescription = stringResource( - id = string.feature_interests_card_follow_button_content_desc, + id = string.core_ui_interests_card_follow_button_content_desc, ), ) }, @@ -78,7 +78,7 @@ fun InterestsItem( Icon( imageVector = NiaIcons.Check, contentDescription = stringResource( - id = string.feature_interests_card_unfollow_button_content_desc, + id = string.core_ui_interests_card_unfollow_button_content_desc, ), ) }, diff --git a/core/ui/src/main/res/values/strings.xml b/core/ui/src/main/res/values/strings.xml index 65a855fc9..ab76748ef 100644 --- a/core/ui/src/main/res/values/strings.xml +++ b/core/ui/src/main/res/values/strings.xml @@ -26,4 +26,7 @@ %1$s is followed %1$s is not followed + + Follow interest + Unfollow interest diff --git a/feature/foryou/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/ForYouViewModelTest.kt b/feature/foryou/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/ForYouViewModelTest.kt index b75573975..2fbdf0a79 100644 --- a/feature/foryou/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/ForYouViewModelTest.kt +++ b/feature/foryou/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/ForYouViewModelTest.kt @@ -36,6 +36,7 @@ import com.google.samples.apps.nowinandroid.core.testing.util.TestSyncManager import com.google.samples.apps.nowinandroid.core.ui.NewsFeedUiState import com.google.samples.apps.nowinandroid.feature.foryou.navigation.LINKED_NEWS_RESOURCE_ID import kotlinx.coroutines.flow.collect +import kotlinx.coroutines.flow.first import kotlinx.coroutines.launch import kotlinx.coroutines.test.UnconfinedTestDispatcher import kotlinx.coroutines.test.advanceUntilIdle @@ -70,6 +71,7 @@ class ForYouViewModelTest { topicsRepository = topicsRepository, userDataRepository = userDataRepository, ) + private val savedStateHandle = SavedStateHandle() private lateinit var viewModel: ForYouViewModel @@ -504,6 +506,24 @@ class ForYouViewModelTest { collectJob.cancel() } + + @Test + fun whenUpdateNewsResourceSavedIsCalled_bookmarkStateIsUpdated() = runTest { + val newsResourceId = "123" + viewModel.updateNewsResourceSaved(newsResourceId, true) + + assertEquals( + expected = setOf(newsResourceId), + actual = userDataRepository.userData.first().bookmarkedNewsResources, + ) + + viewModel.updateNewsResourceSaved(newsResourceId, false) + + assertEquals( + expected = emptySet(), + actual = userDataRepository.userData.first().bookmarkedNewsResources, + ) + } } private val sampleTopics = listOf( diff --git a/feature/interests/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/interests/TabContent.kt b/feature/interests/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/interests/TabContent.kt index 4a48645c5..83058c12e 100644 --- a/feature/interests/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/interests/TabContent.kt +++ b/feature/interests/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/interests/TabContent.kt @@ -39,6 +39,7 @@ import com.google.samples.apps.nowinandroid.core.designsystem.component.scrollba import com.google.samples.apps.nowinandroid.core.designsystem.component.scrollbar.rememberDraggableScroller import com.google.samples.apps.nowinandroid.core.designsystem.component.scrollbar.scrollbarState import com.google.samples.apps.nowinandroid.core.model.data.FollowableTopic +import com.google.samples.apps.nowinandroid.core.ui.InterestsItem @Composable fun TopicsTabContent( diff --git a/feature/interests/src/main/res/values/strings.xml b/feature/interests/src/main/res/values/strings.xml index 2dd1c18a9..8d5322859 100644 --- a/feature/interests/src/main/res/values/strings.xml +++ b/feature/interests/src/main/res/values/strings.xml @@ -18,6 +18,4 @@ Interests Loading data "No available data" - Follow interest - Unfollow interest diff --git a/feature/search/build.gradle.kts b/feature/search/build.gradle.kts index 206f4c0f9..98052e9ab 100644 --- a/feature/search/build.gradle.kts +++ b/feature/search/build.gradle.kts @@ -27,9 +27,7 @@ android { dependencies { implementation(projects.core.data) implementation(projects.core.domain) - implementation(projects.feature.bookmarks) - implementation(projects.feature.foryou) - implementation(projects.feature.interests) + implementation(projects.core.ui) testImplementation(projects.core.testing) diff --git a/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreen.kt b/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreen.kt index ca159c80b..1e4711016 100644 --- a/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreen.kt +++ b/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreen.kt @@ -88,14 +88,11 @@ import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme import com.google.samples.apps.nowinandroid.core.model.data.FollowableTopic import com.google.samples.apps.nowinandroid.core.model.data.UserNewsResource import com.google.samples.apps.nowinandroid.core.ui.DevicePreviews +import com.google.samples.apps.nowinandroid.core.ui.InterestsItem import com.google.samples.apps.nowinandroid.core.ui.NewsFeedUiState.Success import com.google.samples.apps.nowinandroid.core.ui.R.string import com.google.samples.apps.nowinandroid.core.ui.TrackScreenViewEvent import com.google.samples.apps.nowinandroid.core.ui.newsFeed -import com.google.samples.apps.nowinandroid.feature.bookmarks.BookmarksViewModel -import com.google.samples.apps.nowinandroid.feature.foryou.ForYouViewModel -import com.google.samples.apps.nowinandroid.feature.interests.InterestsItem -import com.google.samples.apps.nowinandroid.feature.interests.InterestsViewModel import com.google.samples.apps.nowinandroid.feature.search.R as searchR @Composable @@ -104,10 +101,7 @@ internal fun SearchRoute( onInterestsClick: () -> Unit, onTopicClick: (String) -> Unit, modifier: Modifier = Modifier, - bookmarksViewModel: BookmarksViewModel = hiltViewModel(), - interestsViewModel: InterestsViewModel = hiltViewModel(), searchViewModel: SearchViewModel = hiltViewModel(), - forYouViewModel: ForYouViewModel = hiltViewModel(), ) { val recentSearchQueriesUiState by searchViewModel.recentSearchQueriesUiState.collectAsStateWithLifecycle() val searchResultUiState by searchViewModel.searchResultUiState.collectAsStateWithLifecycle() @@ -120,9 +114,9 @@ internal fun SearchRoute( onSearchQueryChanged = searchViewModel::onSearchQueryChanged, onSearchTriggered = searchViewModel::onSearchTriggered, onClearRecentSearches = searchViewModel::clearRecentSearches, - onNewsResourcesCheckedChanged = forYouViewModel::updateNewsResourceSaved, - onNewsResourceViewed = { bookmarksViewModel.setNewsResourceViewed(it, true) }, - onFollowButtonClick = interestsViewModel::followTopic, + onNewsResourcesCheckedChanged = searchViewModel::setNewsResourceBookmarked, + onNewsResourceViewed = { searchViewModel.setNewsResourceViewed(it, true) }, + onFollowButtonClick = searchViewModel::followTopic, onBackClick = onBackClick, onInterestsClick = onInterestsClick, onTopicClick = onTopicClick, diff --git a/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModel.kt b/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModel.kt index 7c05f81c5..43d5b9405 100644 --- a/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModel.kt +++ b/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModel.kt @@ -23,6 +23,7 @@ import com.google.samples.apps.nowinandroid.core.analytics.AnalyticsEvent import com.google.samples.apps.nowinandroid.core.analytics.AnalyticsEvent.Param import com.google.samples.apps.nowinandroid.core.analytics.AnalyticsHelper import com.google.samples.apps.nowinandroid.core.data.repository.RecentSearchRepository +import com.google.samples.apps.nowinandroid.core.data.repository.UserDataRepository import com.google.samples.apps.nowinandroid.core.domain.GetRecentSearchQueriesUseCase import com.google.samples.apps.nowinandroid.core.domain.GetSearchContentsCountUseCase import com.google.samples.apps.nowinandroid.core.domain.GetSearchContentsUseCase @@ -44,6 +45,7 @@ class SearchViewModel @Inject constructor( getSearchContentsCountUseCase: GetSearchContentsCountUseCase, recentSearchQueriesUseCase: GetRecentSearchQueriesUseCase, private val recentSearchRepository: RecentSearchRepository, + private val userDataRepository: UserDataRepository, private val savedStateHandle: SavedStateHandle, private val analyticsHelper: AnalyticsHelper, ) : ViewModel() { @@ -111,6 +113,24 @@ class SearchViewModel @Inject constructor( recentSearchRepository.clearRecentSearches() } } + + fun setNewsResourceBookmarked(newsResourceId: String, isChecked: Boolean) { + viewModelScope.launch { + userDataRepository.updateNewsResourceBookmark(newsResourceId, isChecked) + } + } + + fun followTopic(followedTopicId: String, followed: Boolean) { + viewModelScope.launch { + userDataRepository.setTopicIdFollowed(followedTopicId, followed) + } + } + + fun setNewsResourceViewed(newsResourceId: String, viewed: Boolean) { + viewModelScope.launch { + userDataRepository.setNewsResourceViewed(newsResourceId, viewed) + } + } } private fun AnalyticsHelper.logEventSearchTriggered(query: String) = diff --git a/feature/search/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModelTest.kt b/feature/search/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModelTest.kt index da0d5654e..662afca7d 100644 --- a/feature/search/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModelTest.kt +++ b/feature/search/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModelTest.kt @@ -33,6 +33,7 @@ import com.google.samples.apps.nowinandroid.feature.search.SearchResultUiState.E import com.google.samples.apps.nowinandroid.feature.search.SearchResultUiState.Loading import com.google.samples.apps.nowinandroid.feature.search.SearchResultUiState.SearchNotReady import kotlinx.coroutines.flow.collect +import kotlinx.coroutines.flow.first import kotlinx.coroutines.launch import kotlinx.coroutines.test.UnconfinedTestDispatcher import kotlinx.coroutines.test.runTest @@ -60,6 +61,7 @@ class SearchViewModelTest { private val recentSearchRepository = TestRecentSearchRepository() private val getRecentQueryUseCase = GetRecentSearchQueriesUseCase(recentSearchRepository) private val getSearchContentsCountUseCase = GetSearchContentsCountUseCase(searchContentsRepository) + private lateinit var viewModel: SearchViewModel @Before @@ -70,6 +72,7 @@ class SearchViewModelTest { recentSearchQueriesUseCase = getRecentQueryUseCase, savedStateHandle = SavedStateHandle(), recentSearchRepository = recentSearchRepository, + userDataRepository = userDataRepository, analyticsHelper = NoOpAnalyticsHelper(), ) userDataRepository.setUserData(emptyUserData) @@ -128,4 +131,22 @@ class SearchViewModelTest { collectJob.cancel() } + + @Test + fun whenToggleNewsResourceSavedIsCalled_bookmarkStateIsUpdated() = runTest { + val newsResourceId = "123" + viewModel.setNewsResourceBookmarked(newsResourceId, true) + + assertEquals( + expected = setOf(newsResourceId), + actual = userDataRepository.userData.first().bookmarkedNewsResources, + ) + + viewModel.setNewsResourceBookmarked(newsResourceId, false) + + assertEquals( + expected = emptySet(), + actual = userDataRepository.userData.first().bookmarkedNewsResources, + ) + } } From 5084fca4dd14cc987391342cfb2e8e419a892768 Mon Sep 17 00:00:00 2001 From: Don Turner Date: Mon, 11 Mar 2024 21:26:42 +0000 Subject: [PATCH 09/39] Fix InterestScreenTest resources Change-Id: Ib6aa372a1ab3b13b5c69c1d3feec2c31e5dca3ce --- .../nowinandroid/interests/InterestsScreenTest.kt | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/feature/interests/src/androidTest/kotlin/com/google/samples/apps/nowinandroid/interests/InterestsScreenTest.kt b/feature/interests/src/androidTest/kotlin/com/google/samples/apps/nowinandroid/interests/InterestsScreenTest.kt index 1584662b8..a441f5a9d 100644 --- a/feature/interests/src/androidTest/kotlin/com/google/samples/apps/nowinandroid/interests/InterestsScreenTest.kt +++ b/feature/interests/src/androidTest/kotlin/com/google/samples/apps/nowinandroid/interests/InterestsScreenTest.kt @@ -27,10 +27,11 @@ import androidx.compose.ui.test.onNodeWithText import com.google.samples.apps.nowinandroid.core.testing.data.followableTopicTestData import com.google.samples.apps.nowinandroid.feature.interests.InterestsScreen import com.google.samples.apps.nowinandroid.feature.interests.InterestsUiState -import com.google.samples.apps.nowinandroid.feature.interests.R import org.junit.Before import org.junit.Rule import org.junit.Test +import com.google.samples.apps.nowinandroid.core.ui.R as CoreUiR +import com.google.samples.apps.nowinandroid.feature.interests.R as InterestsR /** * UI test for checking the correct behaviour of the Interests screen; @@ -50,12 +51,12 @@ class InterestsScreenTest { @Before fun setup() { composeTestRule.activity.apply { - interestsLoading = getString(R.string.feature_interests_loading) - interestsEmptyHeader = getString(R.string.feature_interests_empty_header) + interestsLoading = getString(InterestsR.string.feature_interests_loading) + interestsEmptyHeader = getString(InterestsR.string.feature_interests_empty_header) interestsTopicCardFollowButton = - getString(R.string.feature_interests_card_follow_button_content_desc) + getString(CoreUiR.string.core_ui_interests_card_follow_button_content_desc) interestsTopicCardUnfollowButton = - getString(R.string.feature_interests_card_unfollow_button_content_desc) + getString(CoreUiR.string.core_ui_interests_card_unfollow_button_content_desc) } } From ce9e82622dabeecb4abd2a5cf12184102c541e25 Mon Sep 17 00:00:00 2001 From: Don Turner Date: Thu, 14 Mar 2024 15:26:55 +0000 Subject: [PATCH 10/39] Fix broken reference to string resources Change-Id: Ide4cb90abc2ae7ca78488909a37df685c2e71ec6 --- .../apps/nowinandroid/feature/search/SearchScreenTest.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/feature/search/src/androidTest/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreenTest.kt b/feature/search/src/androidTest/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreenTest.kt index 8a0532e1b..fe01bf4d2 100644 --- a/feature/search/src/androidTest/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreenTest.kt +++ b/feature/search/src/androidTest/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreenTest.kt @@ -38,7 +38,7 @@ import com.google.samples.apps.nowinandroid.core.testing.data.newsResourcesTestD import org.junit.Before import org.junit.Rule import org.junit.Test -import com.google.samples.apps.nowinandroid.feature.interests.R as interestsR +import com.google.samples.apps.nowinandroid.core.ui.R.string /** * UI test for checking the correct behaviour of the Search screen. @@ -73,9 +73,9 @@ class SearchScreenTest { clearSearchContentDesc = getString(R.string.feature_search_clear_search_text_content_desc) clearRecentSearchesContentDesc = getString(R.string.feature_search_clear_recent_searches_content_desc) followButtonContentDesc = - getString(interestsR.string.feature_interests_card_follow_button_content_desc) + getString(string.core_ui_interests_card_follow_button_content_desc) unfollowButtonContentDesc = - getString(interestsR.string.feature_interests_card_unfollow_button_content_desc) + getString(string.core_ui_interests_card_unfollow_button_content_desc) topicsString = getString(R.string.feature_search_topics) updatesString = getString(R.string.feature_search_updates) tryAnotherSearchString = getString(R.string.feature_search_try_another_search) + From b5bfe44bf305fa791eb883b1d6a3636d219293d3 Mon Sep 17 00:00:00 2001 From: Don Turner Date: Thu, 14 Mar 2024 16:04:10 +0000 Subject: [PATCH 11/39] Fix spotless Change-Id: I5b08ce68522c59cdd7f7ec56a14a7ebc8b3868cd --- .../apps/nowinandroid/feature/search/SearchScreenTest.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/feature/search/src/androidTest/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreenTest.kt b/feature/search/src/androidTest/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreenTest.kt index fe01bf4d2..a9e2fa98f 100644 --- a/feature/search/src/androidTest/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreenTest.kt +++ b/feature/search/src/androidTest/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreenTest.kt @@ -35,10 +35,10 @@ import com.google.samples.apps.nowinandroid.core.model.data.UserData import com.google.samples.apps.nowinandroid.core.model.data.UserNewsResource import com.google.samples.apps.nowinandroid.core.testing.data.followableTopicTestData import com.google.samples.apps.nowinandroid.core.testing.data.newsResourcesTestData +import com.google.samples.apps.nowinandroid.core.ui.R.string import org.junit.Before import org.junit.Rule import org.junit.Test -import com.google.samples.apps.nowinandroid.core.ui.R.string /** * UI test for checking the correct behaviour of the Search screen. From 1d769f13a3e06bd56a8146ef6526a51b844b537f Mon Sep 17 00:00:00 2001 From: Don Turner Date: Thu, 14 Mar 2024 17:40:54 +0000 Subject: [PATCH 12/39] Update module dependency graphs Change-Id: Ia2fe3f339b26bf64dd965fc1aa58a957cb7c7f93 --- docs/images/graphs/dep_graph_app.svg | 336 +++++++++--------- .../graphs/dep_graph_feature_search.svg | 308 ++++++---------- 2 files changed, 262 insertions(+), 382 deletions(-) diff --git a/docs/images/graphs/dep_graph_app.svg b/docs/images/graphs/dep_graph_app.svg index f305eff13..57a592a8e 100644 --- a/docs/images/graphs/dep_graph_app.svg +++ b/docs/images/graphs/dep_graph_app.svg @@ -4,478 +4,460 @@ - - + + G - + :app - -:app + +:app :feature:interests - -:feature:interests + +:feature:interests :app->:feature:interests - - + + :feature:foryou - -:feature:foryou + +:feature:foryou :app->:feature:foryou - - + + :feature:bookmarks - -:feature:bookmarks + +:feature:bookmarks :app->:feature:bookmarks - - + + :feature:topic - -:feature:topic + +:feature:topic :app->:feature:topic - - + + :feature:search - -:feature:search + +:feature:search :app->:feature:search - - + + :feature:settings - -:feature:settings + +:feature:settings :app->:feature:settings - - + + :core:common - -:core:common + +:core:common :app->:core:common - - + + :core:ui - -:core:ui + +:core:ui :app->:core:ui - - + + :core:designsystem - -:core:designsystem + +:core:designsystem :app->:core:designsystem - - + + :core:data - -:core:data + +:core:data :app->:core:data - - + + :core:model - -:core:model + +:core:model :app->:core:model - - + + :core:analytics - -:core:analytics + +:core:analytics :app->:core:analytics - - + + :sync:work - -:sync:work + +:sync:work :app->:sync:work - - + + :feature:interests->:core:ui - - + + :feature:interests->:core:designsystem - - + + :feature:interests->:core:data - - + + :core:domain - -:core:domain + +:core:domain :feature:interests->:core:domain - - + + :feature:foryou->:core:ui - - + + :feature:foryou->:core:designsystem - - + + :feature:foryou->:core:data - - + + :feature:foryou->:core:domain - - + + :feature:bookmarks->:core:ui - - + + :feature:bookmarks->:core:designsystem - - + + :feature:bookmarks->:core:data - - + + :feature:topic->:core:ui - - + + :feature:topic->:core:designsystem - - + + :feature:topic->:core:data - - - - - -:feature:search->:feature:interests - - - - - -:feature:search->:feature:foryou - - - - - -:feature:search->:feature:bookmarks - - + + :feature:search->:core:ui - - + + :feature:search->:core:designsystem - - + + :feature:search->:core:data - - + + :feature:search->:core:domain - - + + - + :feature:settings->:core:ui - - + + - + :feature:settings->:core:designsystem - - + + - + :feature:settings->:core:data - - + + :core:ui->:core:designsystem - - + + :core:ui->:core:model - - + + :core:ui->:core:analytics - - + + :core:data->:core:common - - + + :core:data->:core:analytics - - + + :core:database - -:core:database + +:core:database :core:data->:core:database - - + + :core:datastore - -:core:datastore + +:core:datastore :core:data->:core:datastore - - + + :core:network - -:core:network + +:core:network :core:data->:core:network - - + + :core:notifications - -:core:notifications + +:core:notifications :core:data->:core:notifications - - + + - + :sync:work->:core:data - - + + - + :sync:work->:core:analytics - - + + :core:domain->:core:data - - + + :core:domain->:core:model - - + + :core:database->:core:model - - + + :core:datastore->:core:common - - + + :core:datastore->:core:model - - + + :core:datastore-proto - -:core:datastore-proto + +:core:datastore-proto :core:datastore->:core:datastore-proto - - + + :core:network->:core:common - - + + :core:network->:core:model - - + + :core:notifications->:core:common - - + + :core:notifications->:core:model - - + + diff --git a/docs/images/graphs/dep_graph_feature_search.svg b/docs/images/graphs/dep_graph_feature_search.svg index b9a3c36c4..24c90cb0c 100644 --- a/docs/images/graphs/dep_graph_feature_search.svg +++ b/docs/images/graphs/dep_graph_feature_search.svg @@ -4,328 +4,226 @@ - - + + G - + :feature:search - -:feature:search + +:feature:search :core:ui - -:core:ui + +:core:ui :feature:search->:core:ui - - + + :core:designsystem - -:core:designsystem + +:core:designsystem :feature:search->:core:designsystem - - + + :core:data - -:core:data + +:core:data :feature:search->:core:data - - + + :core:domain - -:core:domain + +:core:domain :feature:search->:core:domain - - - - - -:feature:bookmarks - -:feature:bookmarks - - - -:feature:search->:feature:bookmarks - - - - - -:feature:foryou - -:feature:foryou - - - -:feature:search->:feature:foryou - - - - - -:feature:interests - -:feature:interests - - - -:feature:search->:feature:interests - - + + - + :core:ui->:core:designsystem - - + + - + :core:analytics - -:core:analytics + +:core:analytics - + :core:ui->:core:analytics - - + + - + :core:model - -:core:model + +:core:model - + :core:ui->:core:model - - + + - + :core:data->:core:analytics - - + + - + :core:common - -:core:common + +:core:common - + :core:data->:core:common - - + + - + :core:database - -:core:database + +:core:database - + :core:data->:core:database - - + + - + :core:datastore - -:core:datastore + +:core:datastore - + :core:data->:core:datastore - - + + - + :core:network - -:core:network + +:core:network - + :core:data->:core:network - - + + - + :core:notifications - -:core:notifications + +:core:notifications - + :core:data->:core:notifications - - + + - + :core:domain->:core:data - - + + - + :core:domain->:core:model - - - - - -:feature:bookmarks->:core:ui - - - - - -:feature:bookmarks->:core:designsystem - - - - - -:feature:bookmarks->:core:data - - - - - -:feature:foryou->:core:ui - - - - - -:feature:foryou->:core:designsystem - - - - - -:feature:foryou->:core:data - - - - - -:feature:foryou->:core:domain - - - - - -:feature:interests->:core:ui - - - - - -:feature:interests->:core:designsystem - - - - - -:feature:interests->:core:data - - - - - -:feature:interests->:core:domain - - + + - + :core:database->:core:model - - + + - + :core:datastore->:core:model - - + + - + :core:datastore->:core:common - - + + - + :core:datastore-proto - -:core:datastore-proto + +:core:datastore-proto - + :core:datastore->:core:datastore-proto - - + + - + :core:network->:core:model - - + + - + :core:network->:core:common - - + + - + :core:notifications->:core:model - - + + - + :core:notifications->:core:common - - + + From 825a5e2f5f7e9821592e646ec8f2259ff4d43397 Mon Sep 17 00:00:00 2001 From: sanao1006 Date: Fri, 15 Mar 2024 09:15:16 +0900 Subject: [PATCH 13/39] [Refactor]: Directly call SearchContentsRepository interface in SearchViewModel - Remove GetSearchContentsCountUseCase. - Remove GetSearchContentsCountUseCase from SearchViewModel. - Remove GetSearchContentsCountUseCase from SearchViewModelTest. Fixes #1283 --- .../domain/GetSearchContentsCountUseCase.kt | 31 ------------------- .../feature/search/SearchViewModel.kt | 6 ++-- .../feature/search/SearchViewModelTest.kt | 16 +++++----- 3 files changed, 12 insertions(+), 41 deletions(-) delete mode 100644 core/domain/src/main/kotlin/com/google/samples/apps/nowinandroid/core/domain/GetSearchContentsCountUseCase.kt diff --git a/core/domain/src/main/kotlin/com/google/samples/apps/nowinandroid/core/domain/GetSearchContentsCountUseCase.kt b/core/domain/src/main/kotlin/com/google/samples/apps/nowinandroid/core/domain/GetSearchContentsCountUseCase.kt deleted file mode 100644 index 3e3e1952e..000000000 --- a/core/domain/src/main/kotlin/com/google/samples/apps/nowinandroid/core/domain/GetSearchContentsCountUseCase.kt +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright 2023 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.google.samples.apps.nowinandroid.core.domain - -import com.google.samples.apps.nowinandroid.core.data.repository.SearchContentsRepository -import kotlinx.coroutines.flow.Flow -import javax.inject.Inject - -/** - * A use case which returns total count of *Fts tables - */ -class GetSearchContentsCountUseCase @Inject constructor( - private val searchContentsRepository: SearchContentsRepository, -) { - operator fun invoke(): Flow = - searchContentsRepository.getSearchContentsCount() -} diff --git a/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModel.kt b/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModel.kt index 7c05f81c5..f7320e66a 100644 --- a/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModel.kt +++ b/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModel.kt @@ -23,8 +23,8 @@ import com.google.samples.apps.nowinandroid.core.analytics.AnalyticsEvent import com.google.samples.apps.nowinandroid.core.analytics.AnalyticsEvent.Param import com.google.samples.apps.nowinandroid.core.analytics.AnalyticsHelper import com.google.samples.apps.nowinandroid.core.data.repository.RecentSearchRepository +import com.google.samples.apps.nowinandroid.core.data.repository.SearchContentsRepository import com.google.samples.apps.nowinandroid.core.domain.GetRecentSearchQueriesUseCase -import com.google.samples.apps.nowinandroid.core.domain.GetSearchContentsCountUseCase import com.google.samples.apps.nowinandroid.core.domain.GetSearchContentsUseCase import com.google.samples.apps.nowinandroid.core.model.data.UserSearchResult import dagger.hilt.android.lifecycle.HiltViewModel @@ -41,8 +41,8 @@ import javax.inject.Inject @HiltViewModel class SearchViewModel @Inject constructor( getSearchContentsUseCase: GetSearchContentsUseCase, - getSearchContentsCountUseCase: GetSearchContentsCountUseCase, recentSearchQueriesUseCase: GetRecentSearchQueriesUseCase, + private val searchContentsRepository: SearchContentsRepository, private val recentSearchRepository: RecentSearchRepository, private val savedStateHandle: SavedStateHandle, private val analyticsHelper: AnalyticsHelper, @@ -51,7 +51,7 @@ class SearchViewModel @Inject constructor( val searchQuery = savedStateHandle.getStateFlow(key = SEARCH_QUERY, initialValue = "") val searchResultUiState: StateFlow = - getSearchContentsCountUseCase() + searchContentsRepository.getSearchContentsCount() .flatMapLatest { totalCount -> if (totalCount < SEARCH_MIN_FTS_ENTITY_COUNT) { flowOf(SearchResultUiState.SearchNotReady) diff --git a/feature/search/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModelTest.kt b/feature/search/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModelTest.kt index da0d5654e..3834ecd23 100644 --- a/feature/search/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModelTest.kt +++ b/feature/search/src/test/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModelTest.kt @@ -19,7 +19,6 @@ package com.google.samples.apps.nowinandroid.feature.search import androidx.lifecycle.SavedStateHandle import com.google.samples.apps.nowinandroid.core.analytics.NoOpAnalyticsHelper import com.google.samples.apps.nowinandroid.core.domain.GetRecentSearchQueriesUseCase -import com.google.samples.apps.nowinandroid.core.domain.GetSearchContentsCountUseCase import com.google.samples.apps.nowinandroid.core.domain.GetSearchContentsUseCase import com.google.samples.apps.nowinandroid.core.testing.data.newsResourcesTestData import com.google.samples.apps.nowinandroid.core.testing.data.topicsTestData @@ -59,15 +58,14 @@ class SearchViewModelTest { ) private val recentSearchRepository = TestRecentSearchRepository() private val getRecentQueryUseCase = GetRecentSearchQueriesUseCase(recentSearchRepository) - private val getSearchContentsCountUseCase = GetSearchContentsCountUseCase(searchContentsRepository) private lateinit var viewModel: SearchViewModel @Before fun setup() { viewModel = SearchViewModel( getSearchContentsUseCase = getSearchContentsUseCase, - getSearchContentsCountUseCase = getSearchContentsCountUseCase, recentSearchQueriesUseCase = getRecentQueryUseCase, + searchContentsRepository = searchContentsRepository, savedStateHandle = SavedStateHandle(), recentSearchRepository = recentSearchRepository, analyticsHelper = NoOpAnalyticsHelper(), @@ -84,7 +82,8 @@ class SearchViewModelTest { fun stateIsEmptyQuery_withEmptySearchQuery() = runTest { searchContentsRepository.addNewsResources(newsResourcesTestData) searchContentsRepository.addTopics(topicsTestData) - val collectJob = launch(UnconfinedTestDispatcher()) { viewModel.searchResultUiState.collect() } + val collectJob = + launch(UnconfinedTestDispatcher()) { viewModel.searchResultUiState.collect() } viewModel.onSearchQueryChanged("") @@ -95,7 +94,8 @@ class SearchViewModelTest { @Test fun emptyResultIsReturned_withNotMatchingQuery() = runTest { - val collectJob = launch(UnconfinedTestDispatcher()) { viewModel.searchResultUiState.collect() } + val collectJob = + launch(UnconfinedTestDispatcher()) { viewModel.searchResultUiState.collect() } viewModel.onSearchQueryChanged("XXX") searchContentsRepository.addNewsResources(newsResourcesTestData) @@ -109,7 +109,8 @@ class SearchViewModelTest { @Test fun recentSearches_verifyUiStateIsSuccess() = runTest { - val collectJob = launch(UnconfinedTestDispatcher()) { viewModel.recentSearchQueriesUiState.collect() } + val collectJob = + launch(UnconfinedTestDispatcher()) { viewModel.recentSearchQueriesUiState.collect() } viewModel.onSearchTriggered("kotlin") val result = viewModel.recentSearchQueriesUiState.value @@ -120,7 +121,8 @@ class SearchViewModelTest { @Test fun searchNotReady_withNoFtsTableEntity() = runTest { - val collectJob = launch(UnconfinedTestDispatcher()) { viewModel.searchResultUiState.collect() } + val collectJob = + launch(UnconfinedTestDispatcher()) { viewModel.searchResultUiState.collect() } viewModel.onSearchQueryChanged("") From c7e9dd3803da01033cbfa817f3b987bcde33f4a1 Mon Sep 17 00:00:00 2001 From: Don Turner Date: Fri, 15 Mar 2024 08:19:57 +0000 Subject: [PATCH 14/39] Update method name. Fixes #1287 Change-Id: I9b603bd33f7be0f7562aab4a7b6f2307a3a1333a --- .../samples/apps/nowinandroid/feature/search/SearchViewModel.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModel.kt b/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModel.kt index 43d5b9405..ad6ca6112 100644 --- a/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModel.kt +++ b/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchViewModel.kt @@ -116,7 +116,7 @@ class SearchViewModel @Inject constructor( fun setNewsResourceBookmarked(newsResourceId: String, isChecked: Boolean) { viewModelScope.launch { - userDataRepository.updateNewsResourceBookmark(newsResourceId, isChecked) + userDataRepository.setNewsResourceBookmarked(newsResourceId, isChecked) } } From 70dcd5119d694b6582eee27fe71952fc2667fd95 Mon Sep 17 00:00:00 2001 From: Don Turner Date: Fri, 15 Mar 2024 13:32:00 +0000 Subject: [PATCH 15/39] Make path to module graph image dynamic. Fixes #1286 Change-Id: I595a841ef7b06cccc959ca96d18824f4fad4c261 --- app-nia-catalog/README.md | 2 +- app/README.md | 2 +- generateModuleGraphs.sh | 15 ++++++++++++--- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/app-nia-catalog/README.md b/app-nia-catalog/README.md index 99503ba84..cf6d05f4f 100644 --- a/app-nia-catalog/README.md +++ b/app-nia-catalog/README.md @@ -1,3 +1,3 @@ # :app-nia-catalog module ## Dependency graph -![Dependency graph](../../docs/images/graphs/dep_graph_app_nia_catalog.svg) +![Dependency graph](../docs/images/graphs/dep_graph_app_nia_catalog.svg) diff --git a/app/README.md b/app/README.md index f80083494..a3fb4572a 100644 --- a/app/README.md +++ b/app/README.md @@ -1,3 +1,3 @@ # :app module ## Dependency graph -![Dependency graph](../../docs/images/graphs/dep_graph_app.svg) +![Dependency graph](../docs/images/graphs/dep_graph_app.svg) diff --git a/generateModuleGraphs.sh b/generateModuleGraphs.sh index 27dea22da..faeac9a30 100755 --- a/generateModuleGraphs.sh +++ b/generateModuleGraphs.sh @@ -56,14 +56,23 @@ check_and_create_readme() { local file_name="$2" local readme_path="${module_path:1}" # Remove leading colon - readme_path=${readme_path//:/\/} # Replace colons with slashes using sed + readme_path=${readme_path//:/\/} # Replace colons with slashes readme_path="${readme_path}/README.md" #Append the filename # Check if README.md exists and create it if not if [[ ! -f "$readme_path" ]]; then echo "Creating README.md for ${module_path}" - # Calculate the correct relative path to the image - local relative_image_path="../../docs/images/graphs/${file_name}.svg" + + # Determine the depth of the module based on the number of colons + local depth=$(awk -F: '{print NF-1}' <<< "${module_path}") + + # Construct the relative image path with the correct number of "../" + local relative_image_path="../" + for ((i=1; i<$depth; i++)); do + relative_image_path+="../" + done + relative_image_path+="docs/images/graphs/${file_name}.svg" + echo "# ${module_path} module" > "$readme_path" echo "## Dependency graph" >> "$readme_path" echo "![Dependency graph](${relative_image_path})" >> "$readme_path" From dac1a9e446dd8bd41012227ba59bb65ffba7adad Mon Sep 17 00:00:00 2001 From: Jonathan Koren Date: Fri, 15 Mar 2024 09:39:26 -0700 Subject: [PATCH 16/39] Topic detail pane placeholder (#1280) * Topic detail pane placeholder Change-Id: I92b84493a5406240285c0759b30aa10d29871f09 * Add modifier parameter Change-Id: Ie363be83b44f26291030c04c1513cecb851a6899 --- .../InterestsListDetailScreen.kt | 7 +- .../feature/topic/TopicDetailPlaceholder.kt | 71 +++++++++++++++++++ .../feature_topic_ic_topic_placeholder.xml | 55 ++++++++++++++ feature/topic/src/main/res/values/strings.xml | 1 + 4 files changed, 129 insertions(+), 5 deletions(-) create mode 100644 feature/topic/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/topic/TopicDetailPlaceholder.kt create mode 100644 feature/topic/src/main/res/drawable/feature_topic_ic_topic_placeholder.xml diff --git a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/interests2pane/InterestsListDetailScreen.kt b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/interests2pane/InterestsListDetailScreen.kt index b3594b81f..335f83371 100644 --- a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/interests2pane/InterestsListDetailScreen.kt +++ b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/interests2pane/InterestsListDetailScreen.kt @@ -17,8 +17,6 @@ package com.google.samples.apps.nowinandroid.ui.interests2pane import androidx.activity.compose.BackHandler -import androidx.compose.foundation.layout.Box -import androidx.compose.material3.Text import androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi import androidx.compose.material3.adaptive.layout.ListDetailPaneScaffold import androidx.compose.material3.adaptive.layout.ListDetailPaneScaffoldRole @@ -39,6 +37,7 @@ import androidx.navigation.navArgument import com.google.samples.apps.nowinandroid.feature.interests.InterestsRoute import com.google.samples.apps.nowinandroid.feature.interests.navigation.INTERESTS_ROUTE import com.google.samples.apps.nowinandroid.feature.interests.navigation.TOPIC_ID_ARG +import com.google.samples.apps.nowinandroid.feature.topic.TopicDetailPlaceholder import com.google.samples.apps.nowinandroid.feature.topic.navigation.TOPIC_ROUTE import com.google.samples.apps.nowinandroid.feature.topic.navigation.navigateToTopic import com.google.samples.apps.nowinandroid.feature.topic.navigation.topicScreen @@ -113,9 +112,7 @@ internal fun InterestsListDetailScreen( onTopicClick = ::onTopicClickShowDetailPane, ) composable(route = TOPIC_ROUTE) { - Box { - Text("Placeholder") - } + TopicDetailPlaceholder() } } }, diff --git a/feature/topic/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/topic/TopicDetailPlaceholder.kt b/feature/topic/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/topic/TopicDetailPlaceholder.kt new file mode 100644 index 000000000..627fb8fb3 --- /dev/null +++ b/feature/topic/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/topic/TopicDetailPlaceholder.kt @@ -0,0 +1,71 @@ +/* + * Copyright 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.samples.apps.nowinandroid.feature.topic + +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.Card +import androidx.compose.material3.CardDefaults +import androidx.compose.material3.Icon +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme + +@Composable +fun TopicDetailPlaceholder(modifier: Modifier = Modifier) { + Card( + modifier = modifier, + colors = CardDefaults.cardColors(containerColor = MaterialTheme.colorScheme.surfaceVariant), + shape = RoundedCornerShape(24.dp, 24.dp, 0.dp, 0.dp), + ) { + Column( + modifier = Modifier.fillMaxSize(), + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.spacedBy( + 20.dp, + alignment = Alignment.CenterVertically, + ), + ) { + Icon( + painter = painterResource(id = R.drawable.feature_topic_ic_topic_placeholder), + contentDescription = null, + tint = MaterialTheme.colorScheme.primary, + ) + Text( + text = stringResource(id = R.string.feature_topic_select_an_interest), + style = MaterialTheme.typography.titleLarge, + ) + } + } +} + +@Preview(widthDp = 200, heightDp = 300) +@Composable +fun TopicDetailPlaceholderPreview() { + NiaTheme { + TopicDetailPlaceholder() + } +} diff --git a/feature/topic/src/main/res/drawable/feature_topic_ic_topic_placeholder.xml b/feature/topic/src/main/res/drawable/feature_topic_ic_topic_placeholder.xml new file mode 100644 index 000000000..0518401da --- /dev/null +++ b/feature/topic/src/main/res/drawable/feature_topic_ic_topic_placeholder.xml @@ -0,0 +1,55 @@ + + + + + + + + + + diff --git a/feature/topic/src/main/res/values/strings.xml b/feature/topic/src/main/res/values/strings.xml index 5fefc3f42..fe4a6dc29 100644 --- a/feature/topic/src/main/res/values/strings.xml +++ b/feature/topic/src/main/res/values/strings.xml @@ -16,4 +16,5 @@ --> Loading topic + Select an Interest From 27ca860745f0d3070119a64fde668ab68f518bbc Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Sat, 16 Mar 2024 21:35:20 +0900 Subject: [PATCH 17/39] Rename fake to demo. Change-Id: I5b1d7963e623832a766900aa74ef1085aac0cacc --- .../data/test/repository/FakeNewsRepository.kt | 4 ++-- .../data/test/repository/FakeTopicsRepository.kt | 4 ++-- .../data/testdoubles/TestNiaNetworkDataSource.kt | 4 ++-- .../core/network/di/FlavoredNetworkModule.kt | 4 ++-- ...etManager.kt => JvmUnitTestDemoAssetManager.kt} | 4 ++-- .../DemoAssetManager.kt} | 6 +++--- .../DemoNiaNetworkDataSource.kt} | 10 +++++----- .../nowinandroid/core/network/di/NetworkModule.kt | 4 ++-- .../DemoNiaNetworkDataSourceTest.kt} | 14 +++++++------- 9 files changed, 27 insertions(+), 27 deletions(-) rename core/network/src/main/kotlin/{JvmUnitTestFakeAssetManager.kt => JvmUnitTestDemoAssetManager.kt} (92%) rename core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/{fake/FakeAssetManager.kt => demo/DemoAssetManager.kt} (81%) rename core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/{fake/FakeNiaNetworkDataSource.kt => demo/DemoNiaNetworkDataSource.kt} (91%) rename core/network/src/test/kotlin/com/google/samples/apps/nowinandroid/core/network/{fake/FakeNiaNetworkDataSourceTest.kt => demo/DemoNiaNetworkDataSourceTest.kt} (90%) diff --git a/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeNewsRepository.kt b/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeNewsRepository.kt index 5ceff4dd0..070c7ed38 100644 --- a/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeNewsRepository.kt +++ b/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeNewsRepository.kt @@ -25,7 +25,7 @@ import com.google.samples.apps.nowinandroid.core.database.model.asExternalModel import com.google.samples.apps.nowinandroid.core.model.data.NewsResource import com.google.samples.apps.nowinandroid.core.network.Dispatcher import com.google.samples.apps.nowinandroid.core.network.NiaDispatchers.IO -import com.google.samples.apps.nowinandroid.core.network.fake.FakeNiaNetworkDataSource +import com.google.samples.apps.nowinandroid.core.network.demo.DemoNiaNetworkDataSource import com.google.samples.apps.nowinandroid.core.network.model.NetworkNewsResource import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.flow.Flow @@ -41,7 +41,7 @@ import javax.inject.Inject */ internal class FakeNewsRepository @Inject constructor( @Dispatcher(IO) private val ioDispatcher: CoroutineDispatcher, - private val datasource: FakeNiaNetworkDataSource, + private val datasource: DemoNiaNetworkDataSource, ) : NewsRepository { override fun getNewsResources( diff --git a/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeTopicsRepository.kt b/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeTopicsRepository.kt index f8ebca29e..0b81dd309 100644 --- a/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeTopicsRepository.kt +++ b/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeTopicsRepository.kt @@ -21,7 +21,7 @@ import com.google.samples.apps.nowinandroid.core.data.repository.TopicsRepositor import com.google.samples.apps.nowinandroid.core.model.data.Topic import com.google.samples.apps.nowinandroid.core.network.Dispatcher import com.google.samples.apps.nowinandroid.core.network.NiaDispatchers.IO -import com.google.samples.apps.nowinandroid.core.network.fake.FakeNiaNetworkDataSource +import com.google.samples.apps.nowinandroid.core.network.demo.DemoNiaNetworkDataSource import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.flow @@ -38,7 +38,7 @@ import javax.inject.Inject */ internal class FakeTopicsRepository @Inject constructor( @Dispatcher(IO) private val ioDispatcher: CoroutineDispatcher, - private val datasource: FakeNiaNetworkDataSource, + private val datasource: DemoNiaNetworkDataSource, ) : TopicsRepository { override fun getTopics(): Flow> = flow { emit( diff --git a/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/testdoubles/TestNiaNetworkDataSource.kt b/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/testdoubles/TestNiaNetworkDataSource.kt index 7f9a69959..7675af7e9 100644 --- a/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/testdoubles/TestNiaNetworkDataSource.kt +++ b/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/testdoubles/TestNiaNetworkDataSource.kt @@ -17,7 +17,7 @@ package com.google.samples.apps.nowinandroid.core.data.testdoubles import com.google.samples.apps.nowinandroid.core.network.NiaNetworkDataSource -import com.google.samples.apps.nowinandroid.core.network.fake.FakeNiaNetworkDataSource +import com.google.samples.apps.nowinandroid.core.network.demo.DemoNiaNetworkDataSource import com.google.samples.apps.nowinandroid.core.network.model.NetworkChangeList import com.google.samples.apps.nowinandroid.core.network.model.NetworkNewsResource import com.google.samples.apps.nowinandroid.core.network.model.NetworkTopic @@ -35,7 +35,7 @@ enum class CollectionType { */ class TestNiaNetworkDataSource : NiaNetworkDataSource { - private val source = FakeNiaNetworkDataSource( + private val source = DemoNiaNetworkDataSource( UnconfinedTestDispatcher(), Json { ignoreUnknownKeys = true }, ) diff --git a/core/network/src/demo/kotlin/com/google/samples/apps/nowinandroid/core/network/di/FlavoredNetworkModule.kt b/core/network/src/demo/kotlin/com/google/samples/apps/nowinandroid/core/network/di/FlavoredNetworkModule.kt index 850b00201..42c2ffe8f 100644 --- a/core/network/src/demo/kotlin/com/google/samples/apps/nowinandroid/core/network/di/FlavoredNetworkModule.kt +++ b/core/network/src/demo/kotlin/com/google/samples/apps/nowinandroid/core/network/di/FlavoredNetworkModule.kt @@ -17,7 +17,7 @@ package com.google.samples.apps.nowinandroid.core.network.di import com.google.samples.apps.nowinandroid.core.network.NiaNetworkDataSource -import com.google.samples.apps.nowinandroid.core.network.fake.FakeNiaNetworkDataSource +import com.google.samples.apps.nowinandroid.core.network.demo.DemoNiaNetworkDataSource import dagger.Binds import dagger.Module import dagger.hilt.InstallIn @@ -28,5 +28,5 @@ import dagger.hilt.components.SingletonComponent internal interface FlavoredNetworkModule { @Binds - fun binds(impl: FakeNiaNetworkDataSource): NiaNetworkDataSource + fun binds(impl: DemoNiaNetworkDataSource): NiaNetworkDataSource } diff --git a/core/network/src/main/kotlin/JvmUnitTestFakeAssetManager.kt b/core/network/src/main/kotlin/JvmUnitTestDemoAssetManager.kt similarity index 92% rename from core/network/src/main/kotlin/JvmUnitTestFakeAssetManager.kt rename to core/network/src/main/kotlin/JvmUnitTestDemoAssetManager.kt index 79370d5a8..9c86a5c2e 100644 --- a/core/network/src/main/kotlin/JvmUnitTestFakeAssetManager.kt +++ b/core/network/src/main/kotlin/JvmUnitTestDemoAssetManager.kt @@ -15,7 +15,7 @@ */ import androidx.annotation.VisibleForTesting -import com.google.samples.apps.nowinandroid.core.network.fake.FakeAssetManager +import com.google.samples.apps.nowinandroid.core.network.demo.DemoAssetManager import java.io.File import java.io.InputStream import java.util.Properties @@ -26,7 +26,7 @@ import java.util.Properties * @see UnitTestOptions */ @VisibleForTesting -internal object JvmUnitTestFakeAssetManager : FakeAssetManager { +internal object JvmUnitTestDemoAssetManager : DemoAssetManager { private val config = requireNotNull(javaClass.getResource("com/android/tools/test_config.properties")) { """ diff --git a/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/fake/FakeAssetManager.kt b/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt similarity index 81% rename from core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/fake/FakeAssetManager.kt rename to core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt index 53ad7d48d..e5fb07bb3 100644 --- a/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/fake/FakeAssetManager.kt +++ b/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 The Android Open Source Project + * Copyright 2024 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,10 +14,10 @@ * limitations under the License. */ -package com.google.samples.apps.nowinandroid.core.network.fake +package com.google.samples.apps.nowinandroid.core.network.demo import java.io.InputStream -fun interface FakeAssetManager { +fun interface DemoAssetManager { fun open(fileName: String): InputStream } diff --git a/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkDataSource.kt b/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt similarity index 91% rename from core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkDataSource.kt rename to core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt index 6ef90ecff..b7c912c00 100644 --- a/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkDataSource.kt +++ b/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 The Android Open Source Project + * Copyright 2024 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,9 +14,9 @@ * limitations under the License. */ -package com.google.samples.apps.nowinandroid.core.network.fake +package com.google.samples.apps.nowinandroid.core.network.demo -import JvmUnitTestFakeAssetManager +import JvmUnitTestDemoAssetManager import com.google.samples.apps.nowinandroid.core.network.Dispatcher import com.google.samples.apps.nowinandroid.core.network.NiaDispatchers.IO import com.google.samples.apps.nowinandroid.core.network.NiaNetworkDataSource @@ -33,10 +33,10 @@ import javax.inject.Inject /** * [NiaNetworkDataSource] implementation that provides static news resources to aid development */ -class FakeNiaNetworkDataSource @Inject constructor( +class DemoNiaNetworkDataSource @Inject constructor( @Dispatcher(IO) private val ioDispatcher: CoroutineDispatcher, private val networkJson: Json, - private val assets: FakeAssetManager = JvmUnitTestFakeAssetManager, + private val assets: DemoAssetManager = JvmUnitTestDemoAssetManager, ) : NiaNetworkDataSource { @OptIn(ExperimentalSerializationApi::class) diff --git a/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt b/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt index a68683c7c..a99464304 100644 --- a/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt +++ b/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt @@ -22,7 +22,7 @@ import coil.ImageLoader import coil.decode.SvgDecoder import coil.util.DebugLogger import com.google.samples.apps.nowinandroid.core.network.BuildConfig -import com.google.samples.apps.nowinandroid.core.network.fake.FakeAssetManager +import com.google.samples.apps.nowinandroid.core.network.demo.DemoAssetManager import dagger.Module import dagger.Provides import dagger.hilt.InstallIn @@ -48,7 +48,7 @@ internal object NetworkModule { @Singleton fun providesFakeAssetManager( @ApplicationContext context: Context, - ): FakeAssetManager = FakeAssetManager(context.assets::open) + ): DemoAssetManager = DemoAssetManager(context.assets::open) @Provides @Singleton diff --git a/core/network/src/test/kotlin/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkDataSourceTest.kt b/core/network/src/test/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSourceTest.kt similarity index 90% rename from core/network/src/test/kotlin/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkDataSourceTest.kt rename to core/network/src/test/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSourceTest.kt index a0c60fdcb..e60cfeb3e 100644 --- a/core/network/src/test/kotlin/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkDataSourceTest.kt +++ b/core/network/src/test/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSourceTest.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 The Android Open Source Project + * Copyright 2024 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,9 +14,9 @@ * limitations under the License. */ -package com.google.samples.apps.nowinandroid.core.network.fake +package com.google.samples.apps.nowinandroid.core.network.demo -import JvmUnitTestFakeAssetManager +import JvmUnitTestDemoAssetManager import com.google.samples.apps.nowinandroid.core.network.model.NetworkNewsResource import com.google.samples.apps.nowinandroid.core.network.model.NetworkTopic import kotlinx.coroutines.test.StandardTestDispatcher @@ -29,18 +29,18 @@ import org.junit.Before import org.junit.Test import kotlin.test.assertEquals -class FakeNiaNetworkDataSourceTest { +class DemoNiaNetworkDataSourceTest { - private lateinit var subject: FakeNiaNetworkDataSource + private lateinit var subject: DemoNiaNetworkDataSource private val testDispatcher = StandardTestDispatcher() @Before fun setUp() { - subject = FakeNiaNetworkDataSource( + subject = DemoNiaNetworkDataSource( ioDispatcher = testDispatcher, networkJson = Json { ignoreUnknownKeys = true }, - assets = JvmUnitTestFakeAssetManager, + assets = JvmUnitTestDemoAssetManager, ) } From 5d99f381e934f471187aa80ec46a310ff91e6738 Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Sat, 16 Mar 2024 21:37:45 +0900 Subject: [PATCH 18/39] Remove VisibleForTesting. Change-Id: Icd7005ec38495a1a4bc6f1594f70a2c1228538ab --- core/network/src/main/kotlin/JvmUnitTestDemoAssetManager.kt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/core/network/src/main/kotlin/JvmUnitTestDemoAssetManager.kt b/core/network/src/main/kotlin/JvmUnitTestDemoAssetManager.kt index 9c86a5c2e..2ef418517 100644 --- a/core/network/src/main/kotlin/JvmUnitTestDemoAssetManager.kt +++ b/core/network/src/main/kotlin/JvmUnitTestDemoAssetManager.kt @@ -14,7 +14,6 @@ * limitations under the License. */ -import androidx.annotation.VisibleForTesting import com.google.samples.apps.nowinandroid.core.network.demo.DemoAssetManager import java.io.File import java.io.InputStream @@ -25,7 +24,7 @@ import java.util.Properties * It must remain on the root package for an easier [Class.getResource] with relative paths. * @see UnitTestOptions */ -@VisibleForTesting + internal object JvmUnitTestDemoAssetManager : DemoAssetManager { private val config = requireNotNull(javaClass.getResource("com/android/tools/test_config.properties")) { From a5be299e3d7d237ae9bf0e1611b8fefbb7398e25 Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Sat, 16 Mar 2024 22:30:41 +0900 Subject: [PATCH 19/39] Move main to demo. Change-Id: I48bb3c26ef02d6302cb7caabcaa17d5b4659031a --- .../apps/nowinandroid/core/network/demo/DemoAssetManager.kt | 0 .../nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename core/network/src/{main => demo}/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt (100%) rename core/network/src/{main => demo}/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt (100%) diff --git a/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt b/core/network/src/demo/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt similarity index 100% rename from core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt rename to core/network/src/demo/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt diff --git a/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt b/core/network/src/demo/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt similarity index 100% rename from core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt rename to core/network/src/demo/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt From 2739168e33b475b5ed1b8c021667c018aea5eb43 Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Sat, 16 Mar 2024 22:54:49 +0900 Subject: [PATCH 20/39] Revert "Move main to demo." This reverts commit a5be299e3d7d237ae9bf0e1611b8fefbb7398e25. --- .../apps/nowinandroid/core/network/demo/DemoAssetManager.kt | 0 .../nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename core/network/src/{demo => main}/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt (100%) rename core/network/src/{demo => main}/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt (100%) diff --git a/core/network/src/demo/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt b/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt similarity index 100% rename from core/network/src/demo/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt rename to core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoAssetManager.kt diff --git a/core/network/src/demo/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt b/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt similarity index 100% rename from core/network/src/demo/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt rename to core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/demo/DemoNiaNetworkDataSource.kt From cd294a8654cff748f1b2114ae7b126be27581fa3 Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Sun, 17 Mar 2024 11:37:32 +0900 Subject: [PATCH 21/39] Change lint ignore name in lint.xml. Change-Id: I3b1e19dedd238ec96bd8debee5fcbcc91bc25094 --- core/network/lint.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/network/lint.xml b/core/network/lint.xml index 59fd50bd5..07c0cae9e 100644 --- a/core/network/lint.xml +++ b/core/network/lint.xml @@ -20,6 +20,6 @@ java.lang.IllegalStateException: () -> kotlin.String at org.jetbrains.kotlin.asJava.classes.KtLightClassForFacadeImpl$Companion.createForFacadeNoCache --> - + From ee8797f940baa23cf32e0fd3c72ec81d40044741 Mon Sep 17 00:00:00 2001 From: Simon Marquis Date: Sun, 17 Mar 2024 13:21:40 +0000 Subject: [PATCH 22/39] Delete unused `combine` extension in `SyncUtilities.kt` --- .../nowinandroid/core/data/SyncUtilities.kt | 28 ------------------- 1 file changed, 28 deletions(-) diff --git a/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/SyncUtilities.kt b/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/SyncUtilities.kt index 5d069dbaf..878c8ee2f 100644 --- a/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/SyncUtilities.kt +++ b/core/data/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/SyncUtilities.kt @@ -19,8 +19,6 @@ package com.google.samples.apps.nowinandroid.core.data import android.util.Log import com.google.samples.apps.nowinandroid.core.datastore.ChangeListVersions import com.google.samples.apps.nowinandroid.core.network.model.NetworkChangeList -import kotlinx.coroutines.flow.Flow -import kotlinx.coroutines.flow.combine import kotlin.coroutines.cancellation.CancellationException /** @@ -104,29 +102,3 @@ suspend fun Synchronizer.changeListSync( versionUpdater(latestVersion) } }.isSuccess - -/** - * Returns a [Flow] whose values are generated by [transform] function that process the most - * recently emitted values by each flow. - */ -fun combine( - flow: Flow, - flow2: Flow, - flow3: Flow, - flow4: Flow, - flow5: Flow, - flow6: Flow, - transform: suspend (T1, T2, T3, T4, T5, T6) -> R, -): Flow = combine( - combine(flow, flow2, flow3, ::Triple), - combine(flow4, flow5, flow6, ::Triple), -) { t1, t2 -> - transform( - t1.first, - t1.second, - t1.third, - t2.first, - t2.second, - t2.third, - ) -} From 2e16bea60ed17c4fdadbafdd1a12e951745b0129 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Mar 2024 08:52:23 +0000 Subject: [PATCH 23/39] Bump accompanist from 0.32.0 to 0.34.0 Bumps `accompanist` from 0.32.0 to 0.34.0. Updates `com.google.accompanist:accompanist-permissions` from 0.32.0 to 0.34.0 - [Release notes](https://github.com/google/accompanist/releases) - [Commits](https://github.com/google/accompanist/compare/v0.32.0...v0.34.0) Updates `com.google.accompanist:accompanist-testharness` from 0.32.0 to 0.34.0 - [Release notes](https://github.com/google/accompanist/releases) - [Commits](https://github.com/google/accompanist/compare/v0.32.0...v0.34.0) --- updated-dependencies: - dependency-name: com.google.accompanist:accompanist-permissions dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: com.google.accompanist:accompanist-testharness dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 4e397175c..26da6907d 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,5 +1,5 @@ [versions] -accompanist = "0.32.0" +accompanist = "0.34.0" androidDesugarJdkLibs = "2.0.4" # AGP and tools should be updated together androidGradlePlugin = "8.3.0" From 7d2026f180efd7810ab6f586701e4c78255012c5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" Date: Mon, 18 Mar 2024 08:56:07 +0000 Subject: [PATCH 24/39] =?UTF-8?q?=F0=9F=A4=96=20Updates=20baselines=20for?= =?UTF-8?q?=20Dependency=20Guard?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/dependencies/prodReleaseRuntimeClasspath.txt | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/app/dependencies/prodReleaseRuntimeClasspath.txt b/app/dependencies/prodReleaseRuntimeClasspath.txt index 69cf3e50e..85adaf6fc 100644 --- a/app/dependencies/prodReleaseRuntimeClasspath.txt +++ b/app/dependencies/prodReleaseRuntimeClasspath.txt @@ -130,7 +130,7 @@ androidx.work:work-runtime-ktx:2.9.0 androidx.work:work-runtime:2.9.0 com.caverock:androidsvg-aar:1.4 com.google.accompanist:accompanist-drawablepainter:0.32.0 -com.google.accompanist:accompanist-permissions:0.32.0 +com.google.accompanist:accompanist-permissions:0.34.0 com.google.android.datatransport:transport-api:3.0.0 com.google.android.datatransport:transport-backend-cct:3.1.9 com.google.android.datatransport:transport-runtime:3.1.9 @@ -195,8 +195,6 @@ io.coil-kt:coil-compose-base:2.6.0 io.coil-kt:coil-compose:2.6.0 io.coil-kt:coil-svg:2.6.0 io.coil-kt:coil:2.6.0 -io.github.aakira:napier-android:1.4.1 -io.github.aakira:napier:1.4.1 javax.inject:javax.inject:1 org.checkerframework:checker-qual:3.12.0 org.jetbrains.kotlin:kotlin-stdlib-common:1.9.22 From 3c70183ce61d4f0e6b5856a3dc406c3c89cf047d Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Mon, 18 Mar 2024 19:28:06 +0900 Subject: [PATCH 25/39] Change name Fake to Demo. Change-Id: Ife321dd95238227bfdfc1f13f6832472bd699b6f --- .../samples/apps/nowinandroid/core/network/di/NetworkModule.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt b/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt index a99464304..a97540f2b 100644 --- a/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt +++ b/core/network/src/main/kotlin/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt @@ -46,7 +46,7 @@ internal object NetworkModule { @Provides @Singleton - fun providesFakeAssetManager( + fun providesDemoAssetManager( @ApplicationContext context: Context, ): DemoAssetManager = DemoAssetManager(context.assets::open) From 8e87f98e30381677d56f9c9311ec2be1fa009b2e Mon Sep 17 00:00:00 2001 From: Don Turner Date: Mon, 18 Mar 2024 11:10:22 +0000 Subject: [PATCH 26/39] Update ArchitectureLearningJourney.md --- docs/ArchitectureLearningJourney.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/ArchitectureLearningJourney.md b/docs/ArchitectureLearningJourney.md index 925858111..39105ac75 100644 --- a/docs/ArchitectureLearningJourney.md +++ b/docs/ArchitectureLearningJourney.md @@ -25,6 +25,8 @@ The app architecture has three layers: a [data layer](https://developer.android. Diagram showing overall app architecture +> [!NOTE] +> The official Android Architecture is different from other architectures, such as "Clean Architecture". Concepts from other architectures may not apply here, or be applied in different ways. [More discussion here](https://github.com/android/nowinandroid/discussions/1273). The architecture follows a reactive programming model with [unidirectional data flow](https://developer.android.com/jetpack/guide/ui-layer#udf). With the data layer at the bottom, the key concepts are: From 11cd58e74ec59e7b57f65dc1484bb981e5e81b5a Mon Sep 17 00:00:00 2001 From: Don Turner Date: Mon, 18 Mar 2024 11:11:14 +0000 Subject: [PATCH 27/39] Update docs/ArchitectureLearningJourney.md --- docs/ArchitectureLearningJourney.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ArchitectureLearningJourney.md b/docs/ArchitectureLearningJourney.md index 39105ac75..d98dadf1e 100644 --- a/docs/ArchitectureLearningJourney.md +++ b/docs/ArchitectureLearningJourney.md @@ -26,7 +26,7 @@ The app architecture has three layers: a [data layer](https://developer.android. > [!NOTE] -> The official Android Architecture is different from other architectures, such as "Clean Architecture". Concepts from other architectures may not apply here, or be applied in different ways. [More discussion here](https://github.com/android/nowinandroid/discussions/1273). +> The official Android architecture is different from other architectures, such as "Clean Architecture". Concepts from other architectures may not apply here, or be applied in different ways. [More discussion here](https://github.com/android/nowinandroid/discussions/1273). The architecture follows a reactive programming model with [unidirectional data flow](https://developer.android.com/jetpack/guide/ui-layer#udf). With the data layer at the bottom, the key concepts are: From 3534a6fd0da5a4b93c763696184a2f42741843ec Mon Sep 17 00:00:00 2001 From: lihenggui Date: Mon, 18 Mar 2024 21:29:34 -0700 Subject: [PATCH 28/39] Ensure folder initialization and add instructions for Ubuntu users --- generateModuleGraphs.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/generateModuleGraphs.sh b/generateModuleGraphs.sh index faeac9a30..fb2d74712 100755 --- a/generateModuleGraphs.sh +++ b/generateModuleGraphs.sh @@ -25,7 +25,9 @@ if ! command -v dot &> /dev/null then echo "The 'dot' command is not found. This is required to generate SVGs from the Graphviz files." - echo "On macOS, you can install it using Homebrew: 'brew install graphviz'" + echo "Installation instructions:" + echo " - On macOS: You can install Graphviz using Homebrew with the command: 'brew install graphviz'" + echo " - On Ubuntu: You can install Graphviz using APT with the command: 'sudo apt-get install graphviz'" exit 1 fi @@ -50,6 +52,9 @@ done # Get the module paths module_paths=$(./gradlew -q printModulePaths --no-configuration-cache) +# Ensure the output directory exists +mkdir -p docs/images/graphs/ + # Function to check and create a README.md for modules which don't have one. check_and_create_readme() { local module_path="$1" From e2a4706470295ddad37e93f818f1d46588f1994f Mon Sep 17 00:00:00 2001 From: yongsuk44 Date: Wed, 20 Mar 2024 01:07:54 +0900 Subject: [PATCH 29/39] Remove unnecessary opt-in annotations --- .../kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt | 2 -- .../apps/nowinandroid/core/designsystem/component/Chip.kt | 2 -- .../samples/apps/nowinandroid/core/ui/NewsResourceCard.kt | 2 -- .../samples/apps/nowinandroid/feature/search/SearchScreen.kt | 2 -- 4 files changed, 8 deletions(-) diff --git a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt index b2eabe2ed..eaed15a4e 100644 --- a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt +++ b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt @@ -17,7 +17,6 @@ package com.google.samples.apps.nowinandroid.ui import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.ExperimentalLayoutApi import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.WindowInsets import androidx.compose.foundation.layout.WindowInsetsSides @@ -78,7 +77,6 @@ import com.google.samples.apps.nowinandroid.feature.settings.R as settingsR @OptIn( ExperimentalMaterial3Api::class, - ExperimentalLayoutApi::class, ExperimentalComposeUiApi::class, ) @Composable diff --git a/core/designsystem/src/main/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/component/Chip.kt b/core/designsystem/src/main/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/component/Chip.kt index 9497bd92d..fe34cfaed 100644 --- a/core/designsystem/src/main/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/component/Chip.kt +++ b/core/designsystem/src/main/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/component/Chip.kt @@ -18,7 +18,6 @@ package com.google.samples.apps.nowinandroid.core.designsystem.component import androidx.compose.foundation.layout.size import androidx.compose.foundation.shape.CircleShape -import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.FilterChip import androidx.compose.material3.FilterChipDefaults import androidx.compose.material3.Icon @@ -43,7 +42,6 @@ import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme * @param label The text label content. */ @Composable -@OptIn(ExperimentalMaterial3Api::class) fun NiaFilterChip( selected: Boolean, onSelectedChange: (Boolean) -> Unit, diff --git a/core/ui/src/main/kotlin/com/google/samples/apps/nowinandroid/core/ui/NewsResourceCard.kt b/core/ui/src/main/kotlin/com/google/samples/apps/nowinandroid/core/ui/NewsResourceCard.kt index e3fd29e9a..e60c498eb 100644 --- a/core/ui/src/main/kotlin/com/google/samples/apps/nowinandroid/core/ui/NewsResourceCard.kt +++ b/core/ui/src/main/kotlin/com/google/samples/apps/nowinandroid/core/ui/NewsResourceCard.kt @@ -33,7 +33,6 @@ import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material3.Card import androidx.compose.material3.CardDefaults import androidx.compose.material3.CircularProgressIndicator -import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.Icon import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Surface @@ -78,7 +77,6 @@ import java.util.Locale * [NewsResource] card used on the following screens: For You, Saved */ -@OptIn(ExperimentalMaterial3Api::class) @Composable fun NewsResourceCardExpanded( userNewsResource: UserNewsResource, diff --git a/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreen.kt b/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreen.kt index 1e4711016..86b1eb717 100644 --- a/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreen.kt +++ b/feature/search/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/search/SearchScreen.kt @@ -55,7 +55,6 @@ import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue import androidx.compose.runtime.remember import androidx.compose.ui.Alignment -import androidx.compose.ui.ExperimentalComposeUiApi import androidx.compose.ui.Modifier import androidx.compose.ui.focus.FocusRequester import androidx.compose.ui.focus.focusRequester @@ -464,7 +463,6 @@ private fun SearchToolbar( } } -@OptIn(ExperimentalComposeUiApi::class) @Composable private fun SearchTextField( searchQuery: String, From af7729586c25a10c7c62dcc6a9c00cf0d4d27c57 Mon Sep 17 00:00:00 2001 From: yongsuk44 Date: Wed, 20 Mar 2024 01:09:14 +0900 Subject: [PATCH 30/39] Remove empty primary constructors --- .../nowinandroid/core/designsystem/FilterChipScreenshotTests.kt | 2 +- .../core/designsystem/LoadingWheelScreenshotTests.kt | 2 +- .../nowinandroid/core/designsystem/NavigationScreenshotTests.kt | 2 +- .../apps/nowinandroid/core/designsystem/TabsScreenshotTests.kt | 2 +- .../apps/nowinandroid/core/designsystem/TagScreenshotTests.kt | 2 +- .../nowinandroid/core/designsystem/TopAppBarScreenshotTests.kt | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/FilterChipScreenshotTests.kt b/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/FilterChipScreenshotTests.kt index 2c9bc91ec..92d5467ae 100644 --- a/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/FilterChipScreenshotTests.kt +++ b/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/FilterChipScreenshotTests.kt @@ -45,7 +45,7 @@ import org.robolectric.annotation.LooperMode @GraphicsMode(GraphicsMode.Mode.NATIVE) @Config(application = HiltTestApplication::class, qualifiers = "480dpi") @LooperMode(LooperMode.Mode.PAUSED) -class FilterChipScreenshotTests() { +class FilterChipScreenshotTests { @get:Rule val composeTestRule = createAndroidComposeRule() diff --git a/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/LoadingWheelScreenshotTests.kt b/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/LoadingWheelScreenshotTests.kt index 9f80d04e5..9bdaca670 100644 --- a/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/LoadingWheelScreenshotTests.kt +++ b/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/LoadingWheelScreenshotTests.kt @@ -39,7 +39,7 @@ import org.robolectric.annotation.LooperMode @GraphicsMode(GraphicsMode.Mode.NATIVE) @Config(application = HiltTestApplication::class, qualifiers = "480dpi") @LooperMode(LooperMode.Mode.PAUSED) -class LoadingWheelScreenshotTests() { +class LoadingWheelScreenshotTests { @get:Rule val composeTestRule = createAndroidComposeRule() diff --git a/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/NavigationScreenshotTests.kt b/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/NavigationScreenshotTests.kt index e2e92b570..1d1e70f7d 100644 --- a/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/NavigationScreenshotTests.kt +++ b/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/NavigationScreenshotTests.kt @@ -46,7 +46,7 @@ import org.robolectric.annotation.LooperMode @GraphicsMode(GraphicsMode.Mode.NATIVE) @Config(application = HiltTestApplication::class, qualifiers = "480dpi") @LooperMode(LooperMode.Mode.PAUSED) -class NavigationScreenshotTests() { +class NavigationScreenshotTests { @get:Rule val composeTestRule = createAndroidComposeRule() diff --git a/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/TabsScreenshotTests.kt b/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/TabsScreenshotTests.kt index 9190d5f35..19f7bea87 100644 --- a/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/TabsScreenshotTests.kt +++ b/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/TabsScreenshotTests.kt @@ -44,7 +44,7 @@ import org.robolectric.annotation.LooperMode @GraphicsMode(GraphicsMode.Mode.NATIVE) @Config(application = HiltTestApplication::class, qualifiers = "480dpi") @LooperMode(LooperMode.Mode.PAUSED) -class TabsScreenshotTests() { +class TabsScreenshotTests { @get:Rule val composeTestRule = createAndroidComposeRule() diff --git a/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/TagScreenshotTests.kt b/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/TagScreenshotTests.kt index d9edfd6c6..d18f7dec5 100644 --- a/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/TagScreenshotTests.kt +++ b/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/TagScreenshotTests.kt @@ -41,7 +41,7 @@ import org.robolectric.annotation.LooperMode @GraphicsMode(GraphicsMode.Mode.NATIVE) @Config(application = HiltTestApplication::class, qualifiers = "480dpi") @LooperMode(LooperMode.Mode.PAUSED) -class TagScreenshotTests() { +class TagScreenshotTests { @get:Rule val composeTestRule = createAndroidComposeRule() diff --git a/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/TopAppBarScreenshotTests.kt b/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/TopAppBarScreenshotTests.kt index 6fac01562..325d9a501 100644 --- a/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/TopAppBarScreenshotTests.kt +++ b/core/designsystem/src/test/kotlin/com/google/samples/apps/nowinandroid/core/designsystem/TopAppBarScreenshotTests.kt @@ -45,7 +45,7 @@ import org.robolectric.annotation.LooperMode @GraphicsMode(GraphicsMode.Mode.NATIVE) @Config(application = HiltTestApplication::class, qualifiers = "480dpi") @LooperMode(LooperMode.Mode.PAUSED) -class TopAppBarScreenshotTests() { +class TopAppBarScreenshotTests { @get:Rule val composeTestRule = createAndroidComposeRule() From d9b66c4cace93ebc5ab642a40480b0a7fbb0de98 Mon Sep 17 00:00:00 2001 From: sangyoon Date: Thu, 21 Mar 2024 16:24:05 +0900 Subject: [PATCH 31/39] clean up di module in core.database package --- .../apps/nowinandroid/core/database/{ => di}/DaosModule.kt | 5 +++-- .../nowinandroid/core/database/{ => di}/DatabaseModule.kt | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) rename core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/{ => di}/DaosModule.kt (90%) rename core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/{ => di}/DatabaseModule.kt (86%) diff --git a/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/DaosModule.kt b/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/di/DaosModule.kt similarity index 90% rename from core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/DaosModule.kt rename to core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/di/DaosModule.kt index afbbf42e6..e7456054e 100644 --- a/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/DaosModule.kt +++ b/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/di/DaosModule.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 The Android Open Source Project + * Copyright 2024 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,8 +14,9 @@ * limitations under the License. */ -package com.google.samples.apps.nowinandroid.core.database +package com.google.samples.apps.nowinandroid.core.database.di +import com.google.samples.apps.nowinandroid.core.database.NiaDatabase import com.google.samples.apps.nowinandroid.core.database.dao.NewsResourceDao import com.google.samples.apps.nowinandroid.core.database.dao.NewsResourceFtsDao import com.google.samples.apps.nowinandroid.core.database.dao.RecentSearchQueryDao diff --git a/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/DatabaseModule.kt b/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/di/DatabaseModule.kt similarity index 86% rename from core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/DatabaseModule.kt rename to core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/di/DatabaseModule.kt index c6e33f284..d79d35948 100644 --- a/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/DatabaseModule.kt +++ b/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/di/DatabaseModule.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 The Android Open Source Project + * Copyright 2024 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,10 +14,11 @@ * limitations under the License. */ -package com.google.samples.apps.nowinandroid.core.database +package com.google.samples.apps.nowinandroid.core.database.di import android.content.Context import androidx.room.Room +import com.google.samples.apps.nowinandroid.core.database.NiaDatabase import dagger.Module import dagger.Provides import dagger.hilt.InstallIn From 78e3725f9fb01df9c250c6983144fdb6f5abdb14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Alc=C3=A9rreca?= Date: Mon, 25 Mar 2024 18:51:44 +0100 Subject: [PATCH 32/39] Sets up jacoco coverage with a combined report and a GHA (#1303) * Uses jacoco coverage reporting in AGP --- .github/workflows/Build.yaml | 45 +++++++++-- app/build.gradle.kts | 1 - ...ndroidApplicationJacocoConventionPlugin.kt | 17 +++-- .../AndroidLibraryJacocoConventionPlugin.kt | 18 +++-- .../samples/apps/nowinandroid/Jacoco.kt | 74 +++++++++++++------ gradle.properties | 3 + 6 files changed, 115 insertions(+), 43 deletions(-) diff --git a/.github/workflows/Build.yaml b/.github/workflows/Build.yaml index 001140a87..db326c380 100644 --- a/.github/workflows/Build.yaml +++ b/.github/workflows/Build.yaml @@ -17,6 +17,7 @@ jobs: permissions: contents: write + pull-requests: write timeout-minutes: 60 @@ -100,12 +101,13 @@ jobs: commit_message: "🤖 Updates screenshots" # Run local tests after screenshot tests to avoid wrong UP-TO-DATE. TODO: Ignore screenshots. - - name: Run local tests + - name: Run local tests and create report if: always() run: ./gradlew testDemoDebug :lint:test # Replace task exclusions with `-Pandroidx.baselineprofile.skipgeneration` when # https://android-review.googlesource.com/c/platform/frameworks/support/+/2602790 landed in a # release build + - name: Build all build type and flavor permutations run: ./gradlew :app:assemble :benchmarks:assemble -x pixel6Api33ProdNonMinifiedReleaseAndroidTest @@ -119,11 +121,11 @@ jobs: name: APKs path: '**/build/outputs/apk/**/*.apk' - - name: Upload test results (XML) + - name: Upload JVM local results (XML) if: always() uses: actions/upload-artifact@v4 with: - name: test-results + name: local-test-results path: '**/build/test-results/test*UnitTest/**.xml' - name: Check lint @@ -180,10 +182,7 @@ jobs: - name: Setup Gradle uses: gradle/gradle-build-action@v3 - - name: Build projects before running emulator - run: ./gradlew packageDemoDebug packageDemoDebugAndroidTest - - - name: Run instrumentation tests + - name: Build projects and run instrumentation tests uses: reactivecircus/android-emulator-runner@v2 with: api-level: ${{ matrix.api-level }} @@ -193,9 +192,41 @@ jobs: heap-size: 600M script: ./gradlew connectedDemoDebugAndroidTest --daemon + - name: Run local tests (including Roborazzi) for the combined coverage report (only API 30) + if: matrix.api-level == 30 + # There is no need to verify Roborazzi tests to generate coverage. + run: ./gradlew testDemoDebugUnitTest -Proborazzi.test.verify=false # Add Prod if we ever add JVM tests for prod + + # Add `createProdDebugUnitTestCoverageReport` if we ever add JVM tests for prod + - name: Generate coverage reports for Debug variants (only API 30) + if: matrix.api-level == 30 + run: ./gradlew createDemoDebugCombinedCoverageReport + - name: Upload test reports if: always() uses: actions/upload-artifact@v4 with: name: test-reports-${{ matrix.api-level }} path: '**/build/reports/androidTests' + + - name: Display local test coverage (only API 30) + if: matrix.api-level == 30 + id: jacoco + uses: madrapps/jacoco-report@v1.6.1 + with: + title: Combined test coverage report + min-coverage-overall: 40 + min-coverage-changed-files: 60 + paths: | + ${{ github.workspace }}/**/build/reports/jacoco/**/*Report.xml + token: ${{ secrets.GITHUB_TOKEN }} + + - name: Upload local coverage reports (XML + HTML) (only API 30) + if: matrix.api-level == 30 + uses: actions/upload-artifact@v4 + with: + name: coverage-reports + if-no-files-found: error + compression-level: 1 + overwrite: false + path: '**/build/reports/jacoco/' diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 9e68ffa7d..2fe18645e 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -21,7 +21,6 @@ plugins { alias(libs.plugins.nowinandroid.android.application.flavors) alias(libs.plugins.nowinandroid.android.application.jacoco) alias(libs.plugins.nowinandroid.android.hilt) - id("jacoco") alias(libs.plugins.nowinandroid.android.application.firebase) id("com.google.android.gms.oss-licenses-plugin") alias(libs.plugins.baselineprofile) diff --git a/build-logic/convention/src/main/kotlin/AndroidApplicationJacocoConventionPlugin.kt b/build-logic/convention/src/main/kotlin/AndroidApplicationJacocoConventionPlugin.kt index 4c3acc520..ac385b0d9 100644 --- a/build-logic/convention/src/main/kotlin/AndroidApplicationJacocoConventionPlugin.kt +++ b/build-logic/convention/src/main/kotlin/AndroidApplicationJacocoConventionPlugin.kt @@ -15,6 +15,7 @@ */ import com.android.build.api.variant.ApplicationAndroidComponentsExtension +import com.android.build.gradle.internal.dsl.BaseAppModuleExtension import com.google.samples.apps.nowinandroid.configureJacoco import org.gradle.api.Plugin import org.gradle.api.Project @@ -23,13 +24,15 @@ import org.gradle.kotlin.dsl.getByType class AndroidApplicationJacocoConventionPlugin : Plugin { override fun apply(target: Project) { with(target) { - with(pluginManager) { - apply("org.gradle.jacoco") - apply("com.android.application") + pluginManager.apply("jacoco") + val androidExtension = extensions.getByType() + + androidExtension.buildTypes.configureEach { + enableAndroidTestCoverage = true + enableUnitTestCoverage = true } - val extension = extensions.getByType() - configureJacoco(extension) + + configureJacoco(extensions.getByType()) } } - -} \ No newline at end of file +} diff --git a/build-logic/convention/src/main/kotlin/AndroidLibraryJacocoConventionPlugin.kt b/build-logic/convention/src/main/kotlin/AndroidLibraryJacocoConventionPlugin.kt index 86ca091c3..6f2ff60c5 100644 --- a/build-logic/convention/src/main/kotlin/AndroidLibraryJacocoConventionPlugin.kt +++ b/build-logic/convention/src/main/kotlin/AndroidLibraryJacocoConventionPlugin.kt @@ -14,6 +14,8 @@ * limitations under the License. */ +import com.android.build.api.dsl.LibraryExtension +import com.android.build.api.variant.ApplicationAndroidComponentsExtension import com.android.build.api.variant.LibraryAndroidComponentsExtension import com.google.samples.apps.nowinandroid.configureJacoco import org.gradle.api.Plugin @@ -23,13 +25,15 @@ import org.gradle.kotlin.dsl.getByType class AndroidLibraryJacocoConventionPlugin : Plugin { override fun apply(target: Project) { with(target) { - with(pluginManager) { - apply("org.gradle.jacoco") - apply("com.android.library") + pluginManager.apply("jacoco") + val androidExtension = extensions.getByType() + + androidExtension.buildTypes.configureEach { + enableAndroidTestCoverage = true + enableUnitTestCoverage = true } - val extension = extensions.getByType() - configureJacoco(extension) + + configureJacoco(extensions.getByType()) } } - -} \ No newline at end of file +} diff --git a/build-logic/convention/src/main/kotlin/com/google/samples/apps/nowinandroid/Jacoco.kt b/build-logic/convention/src/main/kotlin/com/google/samples/apps/nowinandroid/Jacoco.kt index 596c4f579..7820a978e 100644 --- a/build-logic/convention/src/main/kotlin/com/google/samples/apps/nowinandroid/Jacoco.kt +++ b/build-logic/convention/src/main/kotlin/com/google/samples/apps/nowinandroid/Jacoco.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 The Android Open Source Project + * Copyright 2024 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,8 +16,13 @@ package com.google.samples.apps.nowinandroid +import com.android.build.api.artifact.ScopedArtifact import com.android.build.api.variant.AndroidComponentsExtension +import com.android.build.api.variant.ScopedArtifacts import org.gradle.api.Project +import org.gradle.api.file.Directory +import org.gradle.api.file.RegularFile +import org.gradle.api.provider.ListProperty import org.gradle.api.tasks.testing.Test import org.gradle.kotlin.dsl.configure import org.gradle.kotlin.dsl.register @@ -32,13 +37,24 @@ private val coverageExclusions = listOf( "**/R.class", "**/R\$*.class", "**/BuildConfig.*", - "**/Manifest*.*" + "**/Manifest*.*", + "**/*_Hilt*.class", + "**/Hilt_*.class", ) private fun String.capitalize() = replaceFirstChar { if (it.isLowerCase()) it.titlecase(Locale.getDefault()) else it.toString() } +/** + * Creates a new task that generates a combined coverage report with data from local and + * instrumented tests. + * + * `create{variant}CombinedCoverageReport` + * + * Note that coverage data must exist before running the task. This allows us to run device + * tests on CI using a different Github Action or an external device farm. + */ internal fun Project.configureJacoco( androidComponentsExtension: AndroidComponentsExtension<*, *, *>, ) { @@ -46,37 +62,53 @@ internal fun Project.configureJacoco( toolVersion = libs.findVersion("jacoco").get().toString() } - val jacocoTestReport = tasks.create("jacocoTestReport") - androidComponentsExtension.onVariants { variant -> - val testTaskName = "test${variant.name.capitalize()}UnitTest" + val myObjFactory = project.objects val buildDir = layout.buildDirectory.get().asFile - val reportTask = tasks.register("jacoco${testTaskName.capitalize()}Report", JacocoReport::class) { - dependsOn(testTaskName) + val allJars: ListProperty = myObjFactory.listProperty(RegularFile::class.java) + val allDirectories: ListProperty = myObjFactory.listProperty(Directory::class.java) + val reportTask = + tasks.register("create${variant.name.capitalize()}CombinedCoverageReport", JacocoReport::class) { - reports { - xml.required.set(true) - html.required.set(true) - } - - classDirectories.setFrom( - fileTree("$buildDir/tmp/kotlin-classes/${variant.name}") { - exclude(coverageExclusions) + classDirectories.setFrom( + allJars, + allDirectories.map { dirs -> + dirs.map { dir -> + myObjFactory.fileTree().setDir(dir).exclude(coverageExclusions) + } + } + ) + reports { + xml.required.set(true) + html.required.set(true) } - ) - sourceDirectories.setFrom(files("$projectDir/src/main/java", "$projectDir/src/main/kotlin")) - executionData.setFrom(file("$buildDir/jacoco/$testTaskName.exec")) - } + // TODO: This is missing files in src/debug/, src/prod, src/demo, src/demoDebug... + sourceDirectories.setFrom(files("$projectDir/src/main/java", "$projectDir/src/main/kotlin")) + + executionData.setFrom( + project.fileTree("$buildDir/outputs/unit_test_code_coverage/${variant.name}UnitTest") + .matching { include("**/*.exec") }, + + project.fileTree("$buildDir/outputs/code_coverage/${variant.name}AndroidTest") + .matching { include("**/*.ec") } + ) + } + - jacocoTestReport.dependsOn(reportTask) + variant.artifacts.forScope(ScopedArtifacts.Scope.PROJECT) + .use(reportTask) + .toGet( + ScopedArtifact.CLASSES, + { _ -> allJars }, + { _ -> allDirectories }, + ) } tasks.withType().configureEach { configure { // Required for JaCoCo + Robolectric // https://github.com/robolectric/robolectric/issues/2230 - // TODO: Consider removing if not we don't add Robolectric isIncludeNoLocationClasses = true // Required for JDK 11 with the above diff --git a/gradle.properties b/gradle.properties index c0acfeb02..97f940e2e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -39,3 +39,6 @@ kotlin.code.style=official # https://developer.android.com/build/releases/gradle-plugin#default-changes android.defaults.buildfeatures.resvalues=false android.defaults.buildfeatures.shaders=false + +# Run Roborazzi screenshot tests with the local tests +roborazzi.test.verify=true From 23b09583115f1cf96fe1e1e06e932015d9070c27 Mon Sep 17 00:00:00 2001 From: natarajkr007 Date: Tue, 26 Mar 2024 12:57:05 +0530 Subject: [PATCH 33/39] added ksp arg to generate room code in kotlin --- .../src/main/kotlin/AndroidRoomConventionPlugin.kt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/build-logic/convention/src/main/kotlin/AndroidRoomConventionPlugin.kt b/build-logic/convention/src/main/kotlin/AndroidRoomConventionPlugin.kt index 29d31f9e6..dbca79a5e 100644 --- a/build-logic/convention/src/main/kotlin/AndroidRoomConventionPlugin.kt +++ b/build-logic/convention/src/main/kotlin/AndroidRoomConventionPlugin.kt @@ -15,6 +15,7 @@ */ import androidx.room.gradle.RoomExtension +import com.google.devtools.ksp.gradle.KspExtension import com.google.samples.apps.nowinandroid.libs import org.gradle.api.Plugin import org.gradle.api.Project @@ -28,6 +29,10 @@ class AndroidRoomConventionPlugin : Plugin { pluginManager.apply("androidx.room") pluginManager.apply("com.google.devtools.ksp") + extensions.configure { + arg("room.generateKotlin", "true") + } + extensions.configure { // The schemas directory contains a schema file for each version of the Room database. // This is required to enable Room auto migrations. From a22b724a66dea2875977e05b4d4f1cee8290db1d Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Tue, 26 Mar 2024 21:47:14 +0900 Subject: [PATCH 34/39] Change getByName to named - reference by [APIs to avoid](https://docs.gradle.org/current/userguide/task_configuration_avoidance.html#apis_to_avoid) Change-Id: Idf1ce9cf372b8f5da2f0da95fcf53454ffb3388f --- app-nia-catalog/build.gradle.kts | 2 +- app/build.gradle.kts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app-nia-catalog/build.gradle.kts b/app-nia-catalog/build.gradle.kts index 0991ea0c5..94d55b81c 100644 --- a/app-nia-catalog/build.gradle.kts +++ b/app-nia-catalog/build.gradle.kts @@ -59,7 +59,7 @@ android { // To publish on the Play store a private signing key is required, but to allow anyone // who clones the code to sign and run the release variant, use the debug signing key. // TODO: Abstract the signing configuration to a separate file to avoid hardcoding this. - signingConfig = signingConfigs.getByName("debug") + signingConfig = signingConfigs.named("debug").get() } } } diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 2fe18645e..56e265c45 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -52,7 +52,7 @@ android { // To publish on the Play store a private signing key is required, but to allow anyone // who clones the code to sign and run the release variant, use the debug signing key. // TODO: Abstract the signing configuration to a separate file to avoid hardcoding this. - signingConfig = signingConfigs.getByName("debug") + signingConfig = signingConfigs.named("debug").get() // Ensure Baseline Profile is fresh for release builds. baselineProfile.automaticGenerationDuringBuild = true } From 240aa8acdfa5d2125e8600ade873982fdf78b86c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Alc=C3=A9rreca?= Date: Tue, 26 Mar 2024 17:14:38 +0100 Subject: [PATCH 35/39] Add testing section to pull_request_template.md (#1341) --- .github/pull_request_template.md | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index ed5fa237d..28ec373b7 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,10 +1,19 @@ -Thanks for submitting a pull request. Please include the following information. +_Thanks for submitting a pull request. Please include the following information._ **What I have done and why** -Include a summary of what your pull request contains, and why you have made these changes. + +_Include a summary of what your pull request contains, and why you have made these changes._ Fixes # +**How I'm testing it** + +_Choose at least one:_ +- Unit tests +- UI tests +- Screenshot tests +- N/A _(provide justification)_ + **Do tests pass?** - [ ] Run local tests on `DemoDebug` variant: `./gradlew testDemoDebug` - [ ] Check formatting: `./gradlew --init-script gradle/init.gradle.kts spotlessApply` From 16f45c0b1affdb4801f970ea336e4a97f03483dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Alc=C3=A9rreca?= Date: Thu, 11 Apr 2024 19:20:32 +0200 Subject: [PATCH 36/39] Adds screenshot tests for snackbar (#1343) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Adds screenshot tests for snackbar Change-Id: I81566e3301fb17e3f31cbc408e6cc3325eab5a12 * Small tweaks, RFR Change-Id: Ia16db6e6f5bec2714081b5ceaeeba36b2ee26105 * 🤖 Updates screenshots * Update NiaApp.kt Adds modifier to NiaApp --- .../samples/apps/nowinandroid/ui/NiaApp.kt | 189 +++++++------- .../ui/SnackbarScreenshotTests.kt | 238 ++++++++++++++++++ .../screenshots/snackbar_compact_medium.png | Bin 0 -> 33851 bytes .../snackbar_compact_medium_noSnackbar.png | Bin 0 -> 35274 bytes .../snackbar_expanded_expanded.png | Bin 0 -> 159363 bytes .../screenshots/snackbar_medium_medium.png | Bin 0 -> 73925 bytes .../test/repository/FakeNewsRepository.kt | 2 +- .../test/repository/FakeUserDataRepository.kt | 2 +- 8 files changed, 342 insertions(+), 89 deletions(-) create mode 100644 app/src/testDemo/kotlin/com/google/samples/apps/nowinandroid/ui/SnackbarScreenshotTests.kt create mode 100644 app/src/testDemo/screenshots/snackbar_compact_medium.png create mode 100644 app/src/testDemo/screenshots/snackbar_compact_medium_noSnackbar.png create mode 100644 app/src/testDemo/screenshots/snackbar_expanded_expanded.png create mode 100644 app/src/testDemo/screenshots/snackbar_medium_medium.png diff --git a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt index eaed15a4e..aab864f5b 100644 --- a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt +++ b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt @@ -75,10 +75,6 @@ import com.google.samples.apps.nowinandroid.navigation.NiaNavHost import com.google.samples.apps.nowinandroid.navigation.TopLevelDestination import com.google.samples.apps.nowinandroid.feature.settings.R as settingsR -@OptIn( - ExperimentalMaterial3Api::class, - ExperimentalComposeUiApi::class, -) @Composable fun NiaApp(appState: NiaAppState) { val shouldShowGradientBackground = @@ -108,95 +104,114 @@ fun NiaApp(appState: NiaAppState) { } } - if (showSettingsDialog) { - SettingsDialog( - onDismiss = { showSettingsDialog = false }, + NiaApp( + appState = appState, + snackbarHostState = snackbarHostState, + showSettingsDialog = showSettingsDialog, + onSettingsDismissed = { showSettingsDialog = false }, + onTopAppBarActionClick = { showSettingsDialog = true }, + ) + } + } +} + +@Composable +@OptIn(ExperimentalMaterial3Api::class, ExperimentalComposeUiApi::class) +internal fun NiaApp( + appState: NiaAppState, + snackbarHostState: SnackbarHostState, + showSettingsDialog: Boolean, + onSettingsDismissed: () -> Unit, + onTopAppBarActionClick: () -> Unit, + modifier: Modifier = Modifier, +) { + val unreadDestinations by appState.topLevelDestinationsWithUnreadResources + .collectAsStateWithLifecycle() + + if (showSettingsDialog) { + SettingsDialog( + onDismiss = { onSettingsDismissed() }, + ) + } + Scaffold( + modifier = modifier.semantics { + testTagsAsResourceId = true + }, + containerColor = Color.Transparent, + contentColor = MaterialTheme.colorScheme.onBackground, + contentWindowInsets = WindowInsets(0, 0, 0, 0), + snackbarHost = { SnackbarHost(snackbarHostState) }, + bottomBar = { + if (appState.shouldShowBottomBar) { + NiaBottomBar( + destinations = appState.topLevelDestinations, + destinationsWithUnreadResources = unreadDestinations, + onNavigateToDestination = appState::navigateToTopLevelDestination, + currentDestination = appState.currentDestination, + modifier = Modifier.testTag("NiaBottomBar"), + ) + } + }, + ) { padding -> + Row( + Modifier + .fillMaxSize() + .padding(padding) + .consumeWindowInsets(padding) + .windowInsetsPadding( + WindowInsets.safeDrawing.only( + WindowInsetsSides.Horizontal, + ), + ), + ) { + if (appState.shouldShowNavRail) { + NiaNavRail( + destinations = appState.topLevelDestinations, + destinationsWithUnreadResources = unreadDestinations, + onNavigateToDestination = appState::navigateToTopLevelDestination, + currentDestination = appState.currentDestination, + modifier = Modifier + .testTag("NiaNavRail") + .safeDrawingPadding(), ) } - val unreadDestinations by appState.topLevelDestinationsWithUnreadResources.collectAsStateWithLifecycle() - - Scaffold( - modifier = Modifier.semantics { - testTagsAsResourceId = true - }, - containerColor = Color.Transparent, - contentColor = MaterialTheme.colorScheme.onBackground, - contentWindowInsets = WindowInsets(0, 0, 0, 0), - snackbarHost = { SnackbarHost(snackbarHostState) }, - bottomBar = { - if (appState.shouldShowBottomBar) { - NiaBottomBar( - destinations = appState.topLevelDestinations, - destinationsWithUnreadResources = unreadDestinations, - onNavigateToDestination = appState::navigateToTopLevelDestination, - currentDestination = appState.currentDestination, - modifier = Modifier.testTag("NiaBottomBar"), - ) - } - }, - ) { padding -> - Row( - Modifier - .fillMaxSize() - .padding(padding) - .consumeWindowInsets(padding) - .windowInsetsPadding( - WindowInsets.safeDrawing.only( - WindowInsetsSides.Horizontal, - ), + Column(Modifier.fillMaxSize()) { + // Show the top app bar on top level destinations. + val destination = appState.currentTopLevelDestination + if (destination != null) { + NiaTopAppBar( + titleRes = destination.titleTextId, + navigationIcon = NiaIcons.Search, + navigationIconContentDescription = stringResource( + id = settingsR.string.feature_settings_top_app_bar_navigation_icon_description, ), - ) { - if (appState.shouldShowNavRail) { - NiaNavRail( - destinations = appState.topLevelDestinations, - destinationsWithUnreadResources = unreadDestinations, - onNavigateToDestination = appState::navigateToTopLevelDestination, - currentDestination = appState.currentDestination, - modifier = Modifier - .testTag("NiaNavRail") - .safeDrawingPadding(), - ) - } - - Column(Modifier.fillMaxSize()) { - // Show the top app bar on top level destinations. - val destination = appState.currentTopLevelDestination - if (destination != null) { - NiaTopAppBar( - titleRes = destination.titleTextId, - navigationIcon = NiaIcons.Search, - navigationIconContentDescription = stringResource( - id = settingsR.string.feature_settings_top_app_bar_navigation_icon_description, - ), - actionIcon = NiaIcons.Settings, - actionIconContentDescription = stringResource( - id = settingsR.string.feature_settings_top_app_bar_action_icon_description, - ), - colors = TopAppBarDefaults.centerAlignedTopAppBarColors( - containerColor = Color.Transparent, - ), - onActionClick = { showSettingsDialog = true }, - onNavigationClick = { appState.navigateToSearch() }, - ) - } - - NiaNavHost( - appState = appState, - onShowSnackbar = { message, action -> - snackbarHostState.showSnackbar( - message = message, - actionLabel = action, - duration = Short, - ) == ActionPerformed - }, - ) - } - - // TODO: We may want to add padding or spacer when the snackbar is shown so that - // content doesn't display behind it. + actionIcon = NiaIcons.Settings, + actionIconContentDescription = stringResource( + id = settingsR.string.feature_settings_top_app_bar_action_icon_description, + ), + colors = TopAppBarDefaults.centerAlignedTopAppBarColors( + containerColor = Color.Transparent, + ), + onActionClick = { onTopAppBarActionClick() }, + onNavigationClick = { appState.navigateToSearch() }, + ) } + + NiaNavHost( + appState = appState, + onShowSnackbar = { message, action -> + snackbarHostState.showSnackbar( + message = message, + actionLabel = action, + duration = Short, + ) == ActionPerformed + }, + ) } + + // TODO: We may want to add padding or spacer when the snackbar is shown so that + // content doesn't display behind it. } } } diff --git a/app/src/testDemo/kotlin/com/google/samples/apps/nowinandroid/ui/SnackbarScreenshotTests.kt b/app/src/testDemo/kotlin/com/google/samples/apps/nowinandroid/ui/SnackbarScreenshotTests.kt new file mode 100644 index 000000000..fa1ba1036 --- /dev/null +++ b/app/src/testDemo/kotlin/com/google/samples/apps/nowinandroid/ui/SnackbarScreenshotTests.kt @@ -0,0 +1,238 @@ +/* + * Copyright 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.samples.apps.nowinandroid.ui + +import android.util.Log +import androidx.compose.foundation.layout.BoxWithConstraints +import androidx.compose.material3.SnackbarDuration.Indefinite +import androidx.compose.material3.SnackbarHostState +import androidx.compose.material3.windowsizeclass.ExperimentalMaterial3WindowSizeClassApi +import androidx.compose.material3.windowsizeclass.WindowSizeClass +import androidx.compose.runtime.rememberCoroutineScope +import androidx.compose.ui.test.junit4.createAndroidComposeRule +import androidx.compose.ui.test.onRoot +import androidx.compose.ui.unit.Dp +import androidx.compose.ui.unit.DpSize +import androidx.compose.ui.unit.dp +import androidx.test.platform.app.InstrumentationRegistry +import androidx.work.Configuration +import androidx.work.testing.SynchronousExecutor +import androidx.work.testing.WorkManagerTestInitHelper +import com.github.takahirom.roborazzi.captureRoboImage +import com.google.accompanist.testharness.TestHarness +import com.google.samples.apps.nowinandroid.core.data.repository.TopicsRepository +import com.google.samples.apps.nowinandroid.core.data.repository.UserNewsResourceRepository +import com.google.samples.apps.nowinandroid.core.data.test.repository.FakeUserDataRepository +import com.google.samples.apps.nowinandroid.core.data.util.NetworkMonitor +import com.google.samples.apps.nowinandroid.core.data.util.TimeZoneMonitor +import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme +import com.google.samples.apps.nowinandroid.core.testing.util.DefaultRoborazziOptions +import com.google.samples.apps.nowinandroid.uitesthiltmanifest.HiltComponentActivity +import dagger.hilt.android.testing.BindValue +import dagger.hilt.android.testing.HiltAndroidRule +import dagger.hilt.android.testing.HiltAndroidTest +import dagger.hilt.android.testing.HiltTestApplication +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.flow.first +import kotlinx.coroutines.launch +import kotlinx.coroutines.runBlocking +import org.junit.Before +import org.junit.Rule +import org.junit.Test +import org.junit.rules.TemporaryFolder +import org.junit.runner.RunWith +import org.robolectric.RobolectricTestRunner +import org.robolectric.annotation.Config +import org.robolectric.annotation.GraphicsMode +import org.robolectric.annotation.LooperMode +import javax.inject.Inject + +/** + * Tests that the Snackbar is correctly displayed on different screen sizes. + */ +@OptIn(ExperimentalMaterial3WindowSizeClassApi::class) +@RunWith(RobolectricTestRunner::class) +@GraphicsMode(GraphicsMode.Mode.NATIVE) +// Configure Robolectric to use a very large screen size that can fit all of the test sizes. +// This allows enough room to render the content under test without clipping or scaling. +@Config(application = HiltTestApplication::class, qualifiers = "w1000dp-h1000dp-480dpi") +@LooperMode(LooperMode.Mode.PAUSED) +@HiltAndroidTest +class SnackbarScreenshotTests { + + /** + * Manages the components' state and is used to perform injection on your test + */ + @get:Rule(order = 0) + val hiltRule = HiltAndroidRule(this) + + /** + * Create a temporary folder used to create a Data Store file. This guarantees that + * the file is removed in between each test, preventing a crash. + */ + @BindValue + @get:Rule(order = 1) + val tmpFolder: TemporaryFolder = TemporaryFolder.builder().assureDeletion().build() + + /** + * Use a test activity to set the content on. + */ + @get:Rule(order = 2) + val composeTestRule = createAndroidComposeRule() + + @Inject + lateinit var networkMonitor: NetworkMonitor + + @Inject + lateinit var timeZoneMonitor: TimeZoneMonitor + + @Inject + lateinit var userDataRepository: FakeUserDataRepository + + @Inject + lateinit var topicsRepository: TopicsRepository + + @Inject + lateinit var userNewsResourceRepository: UserNewsResourceRepository + + @Before + fun setup() { + val config = Configuration.Builder() + .setMinimumLoggingLevel(Log.DEBUG) + .setExecutor(SynchronousExecutor()) + .build() + + // Initialize WorkManager for instrumentation tests. + WorkManagerTestInitHelper.initializeTestWorkManager( + InstrumentationRegistry.getInstrumentation().context, + config, + ) + + hiltRule.inject() + + // Configure user data + runBlocking { + userDataRepository.setShouldHideOnboarding(true) + + userDataRepository.setFollowedTopicIds( + setOf(topicsRepository.getTopics().first().first().id), + ) + } + } + + @Test + fun phone_noSnackbar() { + val snackbarHostState = SnackbarHostState() + testSnackbarScreenshotWithSize( + snackbarHostState, + 400.dp, + 500.dp, + "snackbar_compact_medium_noSnackbar", + action = { }, + ) + } + + @Test + fun snackbarShown_phone() { + val snackbarHostState = SnackbarHostState() + testSnackbarScreenshotWithSize( + snackbarHostState, + 400.dp, + 500.dp, + "snackbar_compact_medium", + ) { + snackbarHostState.showSnackbar( + "This is a test snackbar message", + actionLabel = "Action Label", + duration = Indefinite, + ) + } + } + + @Test + fun snackbarShown_foldable() { + val snackbarHostState = SnackbarHostState() + testSnackbarScreenshotWithSize( + snackbarHostState, + 600.dp, + 600.dp, + "snackbar_medium_medium", + ) { + snackbarHostState.showSnackbar( + "This is a test snackbar message", + actionLabel = "Action Label", + duration = Indefinite, + ) + } + } + + @Test + fun snackbarShown_tablet() { + val snackbarHostState = SnackbarHostState() + testSnackbarScreenshotWithSize( + snackbarHostState, + 900.dp, + 900.dp, + "snackbar_expanded_expanded", + ) { + snackbarHostState.showSnackbar( + "This is a test snackbar message", + actionLabel = "Action Label", + duration = Indefinite, + ) + } + } + + private fun testSnackbarScreenshotWithSize( + snackbarHostState: SnackbarHostState, + width: Dp, + height: Dp, + screenshotName: String, + action: suspend () -> Unit, + ) { + lateinit var scope: CoroutineScope + composeTestRule.setContent { + scope = rememberCoroutineScope() + + TestHarness(size = DpSize(width, height)) { + BoxWithConstraints { + val appState = rememberNiaAppState( + windowSizeClass = WindowSizeClass.calculateFromSize( + DpSize(maxWidth, maxHeight), + ), + networkMonitor = networkMonitor, + userNewsResourceRepository = userNewsResourceRepository, + timeZoneMonitor = timeZoneMonitor, + ) + NiaTheme { + NiaApp(appState, snackbarHostState, false, {}, {}) + } + } + } + } + + scope.launch { + action() + } + + composeTestRule.onRoot() + .captureRoboImage( + "src/testDemo/screenshots/$screenshotName.png", + roborazziOptions = DefaultRoborazziOptions, + ) + } +} diff --git a/app/src/testDemo/screenshots/snackbar_compact_medium.png b/app/src/testDemo/screenshots/snackbar_compact_medium.png new file mode 100644 index 0000000000000000000000000000000000000000..70d15deb3c6cb7e4a3314436f6011c6165cfbd6f GIT binary patch literal 33851 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 XAywv27b#pt*)0`C_16`zEQ9_JojV}R literal 0 HcmV?d00001 diff --git a/app/src/testDemo/screenshots/snackbar_compact_medium_noSnackbar.png b/app/src/testDemo/screenshots/snackbar_compact_medium_noSnackbar.png new file mode 100644 index 0000000000000000000000000000000000000000..9c3eb133d7f5cb37c88cc8052d26f20b4cff5518 GIT binary patch literal 35274 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

n7NL>i2D#0Su7u3NL)BTTqbJY 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 literal 0 HcmV?d00001 diff --git a/app/src/testDemo/screenshots/snackbar_expanded_expanded.png b/app/src/testDemo/screenshots/snackbar_expanded_expanded.png new file mode 100644 index 0000000000000000000000000000000000000000..e4c7520abbd9d452cb9b1174dfcc63d8bceac0fd GIT binary patch literal 159363 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�M+wN#*&!<>;aYWZ=s~K!K{0;n9U2gNtOYg|6hLiH899qAas=MXTl^zh6dXr7ha=UN4W;Bvm zPc5~EijT%}{}r~9L3bX|TYu(jtAqD?-2UiLY^wiV*Ijh7i7ng5Ju8I#<=*9^!%0ov zYGW>LfrbOQtyuE3bn}c)4sw=PZ67aeH-E`=jrrE_$2kd2^I;pq#`T5n370m)>MS_u zV`cTl_NVaVtt-*+`WbV!ZoA92l!w#=bo10Z&VO0INTTXlqL^|(Cd3r>&2J_2v0U}) zdyC-`PKtPVgr7)lm3V8m1&4eGbC3vpqf(y}e+;$tl8&{Caw*8I=TMRK5WS8poR zWz%u`#6yA`bNE85R-SHhZ$d)$mK)~Aei~Kts`E5d0 z19zg)D(oXep0|te+t(~Y?04J&8oYv+e|uWJgT)5Ef{HKupJu4)e?6#M7MbAf$NhCS z-qFf{rQGim;Gd8C`>Wq^5bwqWP|4rMXm=lH3Z8W70}G6Q#sokslDpyh+$#qRz;ANTj__QlOTg0j7oYU(?d6d(lOz=5W(= zqufWxI$|n#Y%IS+ee}xSbhdEZXV+Nz~qyMujC|+29Zo|EPt^j4T_`aUFLRbel_)N4N`&T-Nob<7 z7Ua4nrZWnh;q66NfFxmTzuQr$(W7}#LX!}R$K&e5W%Mh}Xt9eS7~SBd_3YJ12MTUE z3j~fjL@;gbM{Q_N>eY3OV|6yG*}neKLq`JgDm+HpY-dA|o|GUQZ<&M=arJUt9t=!4 zjZ=K9j0(?~M8A*p`PQ-GEjo$QFCCNpcHAiCZ%{aam#5Jn-yPcaCardln#tpPti!_o zuc`OCPag*C(rJp9d?sx^x1nP-?XMD0gsgxK=NGKy^77Y}3NJe!MF@Ll@ zPvbJb(0m~KRCRMcEbfVUo)e~{UAuhMr>g3q!g~irKcbcA_*9t13Q`J_!vIXh#jN$b z#gm(zmm6D08x`f5@lX4BFHzI>L#$oqL^sT_fhp zz6n+VtE(=?a5?BvE~ysa_869FF+*E_b)pjHBkt5FY1A1;=Z@^Qyv_$@O%=D=lj0y= z<>%Me7*;F}Ee{3DVPDbKono^IRD5-%oQ7ZkI#}l^v$=FtA?t@R%VFH(jp0e>jBl?& zGCNXMs8yHwRpL=o<8$209vHWCWdOB^rzsA9pwW6t;;dW-6Y%+eJ;Vjzv9uS9z4K7u zrR}M}g3`4*SUR`M$a2qQ0KS3myND28pT+OZ0@v+RqNkuiuaq05%Jrd&{CYkkkp4M0 z9LI~u)ip*n%;OKyG-|5@$jZR|Ow*16`q zBubN_f>{KXW5|`j(5&tO?h~v~Vph>IPcomMuMyF6UHms1F9*dYWT9n71FFNce3_f{ zA*4lLajju{Pdk`%Pv7JBJ*E<<{OU?E4cV=lg_H&1zWmbfWVfv@;sVNa(QZq{Ite@q zm*-#9k7$*eN@SN&D4thw&X14=Gb9j#WBRXiQ@|<<1sSqDzzV*onGhZ-Zqu>)kBc%_ zp?|iJ^rh>s2)hCI>w(&xrkk>3$Vsx{GlavnyouLU{mHC^fz~_q4FYADpx>S1YCVIF zmm#xf`^X60Vaw5)Tvk+pVKhz2D~F%`<5$bEJ;%y5`w4w0e2f%GI^{NX$Lk4k4V`9i zbPg|V2O2&YQdFVLml>UyABB(?*wdTD*QxH;#&l|> z?H?v{qpdkqS+Ko(<}4{6A~Q;HdAi7GVQvy& zi3Kd>cvpZn>$9)i&dzXY5MX&)Il!qm&wV475v)u!C9 zZCH!&fV5?VXta>?Y(3k?!Tl`S-kd4JxxqM+ik6!#;Peo1%TfkxkT;QU7kWisMkj^J5~xM*YENzXEElvz)3WR$X8zNOAqQmkR0>}neEWcZEs z-WM)}O}D||0luQJpG?v(jJjq6FpZ@waD~BzWn=<;&~iz$vDeafNp`U`k~mye^07=U z`}EMRa6IdI6&t;{cD(!4Sh$-n9P~4qUZ?swh}CP=TEF4OoxA=Vvf7`burt=k zf$wt)<#|;q5_<<8C62ckn;715rZYwUE z&DMrG^TsK>wcEVq+w~*n#4xIm_5`L)VCh(+%N_B^?fE8wwa($bt#05w`yGn;K1*Vq zUE1t05Xq9H{~i4sjQ=A4>ir-MTiX5BHYEw7HYVID+Iqa_QpA(xb~v0c zY%*yZ(X=X}4UW`ve45#=D&CO{K`!C^n;c<>t`4d%Xgxg;xpj?N0^67~X5Co#tryPr zTbG<2*IN8e`J%#fkv;uM9T}L$pjrU}!<0}X1bN*SJ^^aFjuPE$TV-9EzL@x(q2#x-fulb!YH z{d3DcCwPT__1-W1!&GOETv-g4!}p7wXGB>XUtG0Gp8VRNjRH-QwohD6sK#o6fnM0+ z6{G$f*^ztiNLebhLQllbbvTF}D=d`*B1nvQe9|3RVUh<)oM5_T6N<%3zLnZxLTZj{ z2z1c?%4857;kEe7#ojI9(sb}-#!cyK+eN@6NA*j?f^oe=OpMIk$?C`F0Ia|%E7y%@ z3L~YHF&qN~&#%{Xw)8!O4XgLuc9pas_~G9JB+^LSGK8kWuET>xnum6n=nxs!V&&Y7 zsyz+HvuV+1u%`n_c4+otlMJO3qZsi?dqTmAWvKC|YBVZsj3A8vh3H^9`IvrmPwyNN zD*n+_OMhMIJ~k<>iY%t^^tm2jXJo4SiJx6L5d4#I2uVMwJH(lLT75G4OX<{|g7^|q zt+G8iV1VzUmzB7&(86)UY*~M-NgZ<0$G#4awz}CMkvPO^b=e+>y+>~=_V_7UfW)BV zyb^>z45L{xcGm5nU}74}SSPDm%TkbBQksjSZj2 zs08;y@tB4f>7Rrwzzb_>)5g*k84~TzwyeMuSGm+y1d)5|0pE6w235}D=I$1Uwk7AK zw8fhF`pFXd`7BBUv+4Rb`6*GOY%EB*B=Nk=y%-*-Xyciogo|3Q(MfqtSwqc&V8B=yEN8Q$;xMK9BN?Mx>X$JJO(NCwcu^bFBZJ7XHJom=gs zQaExDGA)Vt&ga@r_YOXSJcd4FZMwllkU(2Dwtm-Spk^f1(+CJ&*&aIY4U=@uy?q(S zr$t_|&nT0yVz1Oj1@_jeHA>m}WQQj-b*5~W`@yZ%5PRC*s z7I7o&i@cTrA!NILWXu3Q#3JaAoon7vao}fVzJG#t8!~-FGeEa z!`f6F$r|oQ1TWmGr{A}W8fAAh>qTbN>l6!?TC83ycZ9g9laflWxrs$EsMddbJpzaT z!55E|H6%z+e`WY^ zZ%PI4x8H&q#>blAX0?Cu)LztoZd`Kho}mzzUBW#rb{%i1(N4x+i|$9YOgbx}M>=BG zfbrVnm~4syXes6cw6Iv1DxHw|Q_HW*rsgb|n4=kF^^maQ&3& zd#oBv?-x(E!Gl17>#KF9n8}u~qN=6hu`?hdi6TZj2mNywyGDy#A682h0R%jrwr5A)`+`$t^ES?EJu9~1+S%0} z?fpo0iRy^+6#0-)X0tHEDcyz3uRQuj>8|sW?SkvfE#ExQ6eY;rMyuXv7@Zrr)GWy^ssNS#H~xn|2T8%TU^dDrpY#t?+MVpwHN>)+cFG z>fn^oIn}!HU2;#l_t8u%wPRV0C9s)hjEi5rgj&ZPey7@b$Oq83zZVBn!|j2^bbDZJ zA`ZOid<&AD04;RhwK7-)Wm1dj^%~P@xTeN$Lq#lmC9>p%t=aGJnYK=5ss9};f6R}V zdn|u`w%SR{9ZtU(yWJbl+=DhB-gr3K5}a!I@aJ|el`-fF%tt2j?a8+r#6%iFeAoJ_lbrQ+08Sa zkj1Ho6WLa|aC|tmG+0d}fs+Zpv~)4VAtEh%__Ai`5fm@oym}daug=nSBm`fTz+-tZ zo4bfkIl^+P=;h*dTiEjc6vEt;cCn`oS^uCFmNjqTH-{$JF*cRjH(XQnqNixO653p@XvAyYiatSp zL$H%xjujA(b|ET%h{Wy^xe%?(9sy05DtxfE@Z6hf3=6ojl-RG@ibwg0P6IJDcbE=U zY`3)Zoc3Uwybo&7KfPEYO&hSC++3b^n2}i}LrcBlKu)h43t{q5j+KAhTfcN{(R3|5 zUM!wGDSlaK+oLl`pIFa)xr;3frA}7@oG`KpS&Wk(eJ6(pzV+X1`H*04^QDi@BpTGO z=i08nml>Hb>r3oy1Yd3kMrs+a>wOjc(VA`iKbAsagvT;>@xjws$eR83*yqi!!H<-z z*pjm`f=Az$ScwmUc9W2Zd`h2XmZJXTtZjH9YS*g{*_Rn_JnS!OCiNJt6IkA7YjmOX zpa{VREgt?vBz?a+-Xe<|bmFxv2gEA!T06-L(@(s+k1mO9H%n2t8%-y}5oN+RGxmEi zlpc1K)W9~OeGFqr5Y;5;Fl0`brLk{OF}_bkI^_47es<*;+8>JtB;szfm69d0bBVAGb-JG@^{(B8>jVIFG25PB3Ok?311h7odBi*J<{c@Q6i(Th$7Y?S z0-5>>A?2o~?D~E_@P7F?%VV`qE8&(ekE9Angs(HNuDRj=l~q1(#lqSwDZL!4w9B(1 z0L^gGFNw(OH!qID5ULQ73d1~k4Ecw%W#14l_QP{#1o(Cot->#NplQC)q`2QKoA{Vf z#NUIG$EEXO7rh%K!}BSS*-bj3(gTM@5+8CHfKa&@F+via@fUZn>lIyDk) zx=x5avBg?_;uq>wOpMvm;45A0z zRrW&P$ptcR`e|t`IY=d4ipr7FKJt1D_V;V5|1n)`O}LNZ=c>sa%W%t0$Df3fLY5IB zVHiU2V=esZGw2(}pb^JAZg>wG96_}jD#S@Y^I2+Or76PHU+(k$zdu-je!AyR34kmQa$R3D@Tl@Z-?;75>64|Wupu*tpDtj~_2W-Xj;Rs|lpwYTRUqL@xJvu&?poT(VJa%7D5Cs^`mm*raA;RrujXp8d1oc=yH zX5Y;R7Jp}}!v2*?(;4Fr(Z@C=`?P?^=4pjhbnlWi$@}n_$^U5x*O|szR2xdw|JZp` zujTG`-YxpNh5o(lC$2702Xx%?#>>PtA%k!Gzjq+B27(-bBRv0sBaniMec;+Dz7)N_ zWoMSba#S7nkNn<)nqe4QI4ZwVT!;~OzsCw8Qcu-*6bsXDHO#JmkJ;1B#aHX`noV1b z!kvgF`LX?RSu|SqOTZPEvSe_dI9IuO`V~TRSkhaQRGAguwWDtWvv*|79#Q*773sTK zCdcFOs%`Ug-LtKJ+-TdH0yuUFxb5++dy+3dH~=`PHv8IqHpD8+2LIY!i86 zcZJg$5sc{x9sL?q7)Hrj4R(>*+lfdCOC0%E#FV|YP-96r&qmo5Om#$<4TEmTe&G2$ zN$Me6amem1Yf9sd)46Gk|2AFB&QC_9d*#emV$4U=?;h%iu8Aq5IQXrM@+~gqswf*0*p_ znfXz!V~ema#%yHFwy?kaeb3;6&-JFkPzoMI%R4C?XVICwiZpO^Aqi3BNdG#ge7p)$u|d@nKS3j6R*lFPUr#LT``T}8w8Iym&i0Yn^O8pd1nMGdw5<3YkiZ%B%00-U4zncGSk#)_xH z+&fZO7|)*)J)sRrSb^uxp_t<|C7f}lZLy!fbjox7+SB7#bZwugq=A6vqY&h46vu5O z`DJT@)s9|=kjYZo%j`UgdYxl|bDqGSFb3M<=b7OaD-Eq(^3`%V&XXG79Wz&TAd!8i(YVAM=qpZ&1A6aTs%GufN$zrE?5aA{m!%3MKrFL)y-)in5sl&%DS!MB zyGJ}F9+FL$7K8t9v@}Bd@xyh)?k{f&%r+MZ)@j)AJsTY7DMoT4pJ8vtjUUS=|1xhh zQ>(abXOyl%>Md!S>1V^BmNW@1xQWw|yh6YYL2Bpv%8OUsk#|fG;Jp@^ZdR{VG?Rep z*zjH4SEins1TrTOjh6URTgjmA3h3uWJ$$Cuy!${F9)+qq3RGp-rljUGU(T5VypO}D z$=>U*C^VS_>in~co-6Ar3l}-ZK8QCJ0}1)iZ9=|JnGC^@uD`hjb_Ij>_OCH>Tv)KH zK=m5A%xh0a4>Z6T0SHRPM(zA4?%6apd(&Whm#A-=uS~=Te6QV$9h`q^$pK^nuH?2t z!!!ztTJPA+PuXXZjQw|F(X>bOSL1AUrI+CSWBc3p77IMD&Q-$O8wDkjSva>?Adbu9p{cRTj;pJ7>+SO zr}yZqDgDu)gCLOi5P(N5EFr>{q$zx}XS$cP$2yaOP=@)TYe68IPDXYsjmzp1F3%yH z#A?;0rQT`6B7W#8U;SNPXYYK504`kIC%t% zXs%V``etgo5?QdaXOSwz%ZXk@FO6a;z)jmic6O7otMOcL7EXu(V9U4Ut_bZp5pQu1 z2-^3!y7Ch^Q}k+Q0`8!>bn!H zRR1*|EA?v($W8LSe~1m3PcA6De|7aJ1vto`F1%%fqRrA1drCfHhQ1x5WLQKk**!hW z1g94b->!{M@k4|D&G9{4u4WV%dQ8>A`xtFOS-zBkMX|@_%7%jlaz-0V$X8-Hi3|^R z-;j7e&B!9o2}G}Q#h5MjZ^k0v5WKA(7A}kAj#45Lx70F5wC!t(`rkW1A{c;rq^-+v z4LtP5b`9-p$UN8;ywUIKKMkA9K}ug+f=5$pQ%)wElh?+_aWMDL(x5^k;dl=)#+Qvt z$l8{ykY44D2iR`{L8k-SuBarN``nq0HTDJeyr8VJ-oZAsmP0RM%ahG ze)RUc^1Tz(+%qxF3*1ebvt@oj|`m8_G|>BkU; z2jaJRpe%W$S>W3vl7!Qg?sGxNZTY?Z!xpqG3rl8el%JH{v6+8ksN21b2NSBRTRd6n z2<+J@np_rEliIYHng7Q{S4Vz>7r9C zDRQ1aED-ENr}uKd4vM{eCa*lC{hY(u{7x{dZ1zj87u(Q!PV?FjQ_?)OeH&3Y+_d)v zkK(f=a~ue?a#QG-<^d8*84VeiWShY!f-oVj#d9^aqsQ{k=*lk>CM_21ov}%^xxnhAhbYFHjgskQbV##$J(lFP%j?Q#S?^GoqXMcZ7 zwhFl;Tg8`NEru`G)M-y#i(8t+jxPc3RxbVZMo|-sTIDG~>xZt)CyGBCqI?48LCOFI z7zw+;6iTee{`Y4155}DUquG8`wFiU!(DT0S&Sr=V4EhU|dgZcJ!iKsNX@htM^CUy& z7Wue6EaB<>=dJIzv3-z$^o=`nYXGjwKAujxv9{tv&a2)eHjOf)U|EGLYZItO{Wm(6} zPGfLvg{bd?5#V%IkQ|BHiXj|M%wx!7djqSO^Q9yI)&Q-{MQ4x-9uQ0aHzN=m2P6df zYGsPt{$&6{L^fuk4&mk7=CtdRH!L!|AAr0%kUAQcsQaH|D%5BoD0(gVMd~GTx=w`} zyZB@(viTO1S_l!Bc=W+-F6Zvxb{uan$%gbA5B|=33-FAHPuemh9&r6r%=}{#_=i6E z>^ab{YcvSkN>4VsNTYoGEZO&~w67~qLFwi(9B?6sd%&#OnoS6}TD(*gAxP;fag|N3 zuw_AvP*UborG`B}8jIPKhVp|_0p-?gYAQ3?|2QN6b6E(q{sJd{!TwiLg`3$MsMLg0 zJFsaQ<^+r((B=Gba?TP}ND8mpgtJxafoOG(LPf%GHN*{ocQPY;=^_<2TCUelCj6<5 z>#x+y02yoDqStR>)l2WA$=u1tXpRYpZ!?E$++0kKdZNP;!!J+UcOlbU;^)pX-3xDymi|9Qw_|z8EN87Ecp1TSHo$%Di z593#bF3UZS3}By0r3?*vQPWGx9uGj{u3|nk=A>u~v#<@els3XMNGb`>q8*ae3oFxGRPkW5_4$6C zX*bqUePkc~Akf40tpCWAsCNq^V4J$-NZJeu(7OEPA*D6-j2kiLMzbZt)(z zN%oO>7!?eNW1E00UrsQRXLMWMJtu@cA!hSLe5F!Xsc_nOk$-XH5X*&l+hz_p{Ef~O zL)>0<8jpXgFp-D!)~@p1WL)S>0qWVQGOcHmgjtuq%CqkxKw~& z^l1~Y#Hj=xEPz2bS6Ej7_Nv?$g5@i~A{rg!_$XTEixfQD>hz6reck(HD(|{bIWq*S z!;t`LtGTrU$ald55nXm4=E?S{OfCK+QJHuvRY`uzyItAs{m?3e?=h!;5c`GCz!e@p37 zP<D8T^!k&bGrDeIF=;V0cQ%hmQa&?T-hKXz>O6_V zih|d~touv*<&S2fSAZf_F<($MOg72O+%Gm2$L3U8s-rj_550L{H-=fGo-?>-Jppw@ z9c$R_@lOo(k&(_)EU5OlC-CsTUH2CmfrMFHehTDUPVCV%`)sa?zH%pO-MjI~nwN&` zgLY1;y_dcP29cQwbSmQeW<}31ERP|C$(;UN$1O2*Rv$Z!AJZCkv?A;oKs!VCxZD9R z`caBkVPX(c{lqLFqYmxaOI0cEQCmGUGXUOfxi_%c&*~qV zS67H>TOj@>H|XkIA8!;X-qIVapw5u>rFTyy7buYeFXQ%tOcor@&U}nhfE2@ExR3-j z)eAo^jx%U6F1r5kXms(YPXZ6#{K^7jfHQ!N`q#e$(>ntCEvf#_b%9I=hdFfD0XRtx z&zdL|4EDR3wcIz@7^Nj>3yV3o*0Eg;BmO}BB&PPjMB5T|{?S@eJ0hPayqM3h1y_J; z+%f`T%-JMjHwy#(xi&dSY2;M7=AN1ZDx^kqmvP|QrIM!1nlmqyZoYcdV;ZH%wR-$5 zUPp*}Z{^aOVnIMBiTsIgAIX!C`T##r<5!usBdzwvpeh$q3?RL6TIPTcjP zWn=URova{%RmmPnY-+_%tIllXIoIpc=vd7`Q;d89J_W7u)qW>VN-!g&aBM_3hElf2 zrO6~3sWNOn>2qxCQxi|q>={5(+h_l)S-_y}g<7xWianp9MC#{3K6YpEOFTGDnp7Sl zKVs;sh9=|4(r9WKikF!a@wZ4~9df$nl|^Q%jr9NRW^HbC8=hqe@XgleLx+`k@y5?= zK&fuHWIMSoyQzj@9WmybVj57Wa>nc7VwjEkfgj2vPSjrV^Ju3GAFfs4uei6^Z7RF? z)ZB5eWu=csV*|J?h1H>sUEOYtK8u5=?Zi(p_koQjG8@)A-ivmpwR~K21F7R$789%f ze3d;t$3owo(3gGJ%M0|X3F31x7ER9kxArp0UBa*2)}y$>@GWAA;Ka4D1{hRyScWgr z@LApxix4TLAn-@{5i_^e^r05ni=7~DJ!ZaFLwswe33#)$;_Sq`AKX#bM-;k}V|w*Q zHUZdGZb_sGR`}d7n)E1jc$~q&mL~tb0s?IQldIj=UZ`dKRz&kMj$GOaS%5m8y@=fz z1|5W{!b^u7u>`CVfg8y7AAIgVwH{K^5ez|n8oTUnjB z!_*65apy$wjBn_c5hTeK9b@n5Dc=v%%T~K|#g^@^(&G8dfKeTD#j(J+z`<5DZ;XVE zNu{APMAsyt`#r$LZlkb*)Z+q<+c0e3q;`JTyvn^^Vw`{{`n05@e|$^?ouB!U1Qe#| z*#GMkj!C86!Q+uH@F)ea7w8SLc-^R~Yd@02Nk*uIhW z1Luq{+4E07-HR-JW~1SuQBIxT3bN*5#$NT#S3T7Y&HmX6@E-FP$I1h< z$i;=?(tKnl(!Qfl(L*GFLk(Sr^X5=tvLWRr^CRk&9AmDz(Q6FJv^U~p&uC(4EdV#F z&5ErS*L(}hu>zJJb1?k6;Ue1>$;ivZM*8tsmFZ0WSJpmkHmTM##r}doLL(NKQmFy zw-q++lQvpX^Gd+Sr9vghwyAux?R!-n`}V$gPfD*{AUSOM_gYLS=J(hV8JzWmhLm{i zPhcZ2P_b-}Rce6kDwN{KfT`n!B}{$15cKtXxxJpzEgxvqwk>a3Fv%OWjJYP1zgLBZ zR*)|v679+4b@9?U;18FlZ1Isb>JaJfeHmC>t(_lv>8ZrMi$&hRKbaOT2C+4t6%eyX zcouXJc-{~FA5UqysHr!G;I|M84)qe}4%ZMDn12#-f5J!qh|oeAKy?aNq$S8(tJTQq z0RsMu1EFUQav0p1t@@Nj?up7&nc$Z|2JwAo738`Lg`@Zrl zMAzRaA>J50{2thS(9#QyQMC1Y{jaA~+LJnNTx_>;lVcxbo*m~sGZ&=fg`4AGi~T&^ z!bwFTF5UXxpUrG|?`yEu=wRH!u(`~tHmyRrvTKzUn(un{>HBy`7e)z0@d?s(iDXro zpN^e44Ocb)JOgD=%oUZZ6Gk=Z2?i}0j2BSW7avc+Y>`OCt>mmS|8%%NdoPgTk+8R8 zzd*%10Z?4|trIh!wcjrPy~kP+AP?^D;>B{k`t&!{itTg}U+YiGIlY%Jjbas-mHsJFs;R*5zfwIcl$GVzuYf8ICZ^djU;7 zP`X=>ia*PSj#QHkOE^z4f9d&s*YoaYJz-;ouU67x-|DK`H*HL`lzlO1GE)`Wz}5}l zKag!T8)(F*r8q~Cq{ksZ-MK-HsGURrv5u+g^B z;poQ5Q>?htLf!m$xH-0Ln+vYUj~UqL)`3#Vp3Xz#=SKvy(8(!)Q8ecfI|fE*vV?X7 zbeOuDmq9@{61y2%o0TU-?0rxGv&wZbqCj(`)S9*>45SqBP!~86hyRt2*I2zqUwU!3 znj%n|rG8hlad6CApTk8Ggul^a^zu78bo4fF{WbJ1a%gX2*hE>WNIj6W3G0lH&FPED z_W36BRsvM-Oh8=D9G1RgAyx5(+z6LFi&Y>?j2cCz`e+z2HXMJGC#NMgJDKF8+7n&_ zwK8i3FVxYm@o@o4@2hIS#cKK8KNiHC3?EK+eN>b_JXXK6Mo4N*EdTRJtr_Y<_qFn+ zb)NR`+H{5!XT23JX6^%rzZEt?3sA2`qnd$+ljbw;MIxyrLt^P4VXh2JRt@JXWpLm6 z8nE~6d=-lwLNF};d}U*0+jd@+KiEN9QVD#gG@z(W_I1Dl&!9-Q(aUaoa~y8cKd~x1 zJ{0LQe~BSfVs+$N`dHT&C2vuU?~;KWwY~hfK#i7AkbBJR&(&Km^p+is_*F)Km#nkP z?0S2q!>q#UNUkjFJW1RN@`7uie=yDDf^X5&vEptOUlCG;O0e3BpR^6&!~OjCRM>C% zjr@I4oKoK*qw!v?An-iUiYFv}Rj3mEoB@Vi=WwdVMpW6ez_eTT0|Ir7h+d`9$BXUo zV5TwR1g%Izc3rZm1{>T8&oH;=_HwM%uBHGeYn zardB8z|2%h7pBpu5RD$ruL&ib37j14-nngt-K#yeF$`%XVE<6g3M_>3jN5+g=qR25 znOcRd`Duk(fJ}pn5MNLlDc(?16V^JYXQkN(Am+_DzOE}Y<|;a_GFq8xSU zCt$YDn3yN-lIDX9{KQMA7mrKp7fJ0gOCtQZ0TuD!sdMNG&x(B3uJ@FCoyySCKDeHn zfxAx7bR;W~fuP+6Emz_};9pTb+D+~AyDfsjwkuUV@F{%P8s0aS;e3O>DLdXFTnJ%w zv`Axg6KoofvEdg?7?}blwq(;|=ht-&AJVZed0f9?&`tAwT=gHzV39-HUH*X~vf3Yy zO&WkbOsk*>>j3#P6%cn&hO+ty!|&5kQ*KJA4W$uXWYs=t1-BG9ZgfOmGy+Xir#qq7 zeO*!ANPGy-++Vjk8rx9onIvJIHo}XmFz6@iXX5)?N>cSc!XBtD#cR+jhv`R6yzP}z z_M7GB?Lw*YZ{pl$-HU|GYDp$&#|Qi9b-C@|Pma{yxZkYcCT0ro*E$N|cGSPkoYoay z0fuM5LZCilrTRW9}v=G=?tWBE^;vRKLN!oS+Rt0 z63*O(WNVj~R@YNb6`POeK}RkhvhQdD8KC+#yh3|QY|aP3AS{Ml`RwfROC+XQbM;2s z?(?%BO-@S@2|us^yCQ@Rv*UDcnmmXB92!L6M9_Aj58y@8=mB*S?! zQm9$LW+C7z81UsaBI;m2Ifl}ZiE$+u5(e5IH1tP=a{65r#79CPkWO@WA6Za97bG*H z7#%B`dct8ns+Ur??`rec2;bOe{~qCs2R)L9_Kx^KdG8roTC8^{p+Z6rzHHTBuUtMq zBE&=#v3P#>{zw9_d_EUcXK3{4cZu`gYI3AxzUzpm40kWm$2}#TdPa@3YyIHv|F@-? zJHdAn|3c{9k0R(EsH)3w*XRF!)4w(CMi^G0pAAsur%`|V@_cUj?pgdJY3J++C9EnJ z{u5>*&ly?Hrl+-h|8oJ}%HVJHmDXV!qZX>}H&@{!j=zHnaStt+8?Or@cuYF4D#JzGVWg@pFWxzeV)C$e>d-UWtHE15{B*KsnfK>tY^pqe{ztxW5~o z_xcy*#`et#DLBmi61Kwmu8SLI>qgHH2KZRjFw~nM8kB@hZVRW#cIf<>f-+_|r+Rh` zE1?7?YHi`tyn zze?+UegO==SQ8^u2Hh0Lp9I(|Mqud3|JjIl_XQaeJRI*S(t}=0)4{aQ1XGV`<;T{c z=~-BhM8ffOSRuKMT#%ca?a~>|CQY&6@%USV_q$RHBDh{2Fk)4zFdM$F6xYKQ2I`Bb z;YS<-ed$*Qr2_^ws5&1&bLU{g0xH5p2<`CvsAxv|5_c#9xT3kmEZxRF(+@ z%FDcbkkaq}PEG$cxgyfyiLX>pP4g6TO_TW?B+H7_%7n+s50hV6QMA|tIIa49goJ0C z7~a*zPE*0b>HrWXHopv^IP{oCVB8K}{$8-)8~pqt3Ri1rFzYpjS14eJywqwm)o8Mp z024U1Kc^(+&TIR2oZ&m}k^iJ`@8WU3btu_{ih!Vx%pcz2-TDHH72|Y{@_DWjL>$$0 z*2%@&kh0cpJ-^>cr`5-25#l8$4T@9aVE&#qj+b@aLbOAib)aW*St6E?b|hfce?J|D z0wFogWX#FzsA+4m1jbfA8F_2=pL*}V)-5K^n{9V~RMQjJ3bis!0M=EeIDZLawO@LE z#Li~q73X7c@`Qk_@>$p(UMM~9O+8mwpW>+5;IoU(iDX(L%KYm z8(u%xZ2bi?!J(s>*~1h=*eZ)zMP^R!3JZ(ddJMtXqAO@n0djKf%Q(jMq?cRV@7XAZ zU7e8G_%^RJziQOD`r0k;8<=zs8H;YZf{Y~(IQUA+$(=lI z@;91yun3gjK&;??p|)BHY(6tgCo9c|O~+hOE4%44*xERwFP0AT7e)hz5Q(%(-+vV4 zHX3=6cZ=|YrBg8S(d4CS^^aOWq~JOk14M^nBgDK$X!NEqRXa#{34RRle5C{JqqhVykO zO(vG8M?h8(;`8&iDs{%`aGamp{TFSg|(-t)WLcp`gSjFHRkZD@1SeO+ZfV|f0x zFReIUrsmVve8lZqwX5k;W9FlxNCvKA3qFHHM!Q_YHVc+~C8_a}GZe$`F`??Q`}Y{T zB`z%~RCH_sDv@KuV1vV`Q8WESOVg`Qgw!=VjB?vJ`oW{&8&bCnABEEy_f(|;qm-XQ zI9S4|uJx5zmGZR<;mW{+fg=Tt0$$5}I~q3tpM%$JA16BI`1CYsu0`egPdXVEbe z;KMBBp~#X>Z@;E+!RX)(z^?Vg(iF5~w1;%eBJo&}`$nMJT9EHo7?0DexuA%zBf`BO zd)%8^q)}wzAJ#KcU}Mx*X?dO3b4y0+TM^DZ>0VR$KkU7CSd-b?E*dK;Qmi1MSVpk| zN>f^_IEsLZ6lnob5P`%1p_3>msI(ay(p3hK8j#)+0U;tK0)`eK0zx1VLQNnc$yots zj`PiY|D5YO*Z%h2zrP{xyWUlvazFR|tW658U2h}L+&pW!NC1kngZmDooa*h(bBi;b ztvXHjKB!M`14SKZF+t5E_2v0Th}^j`vK23Era?c)z*$I!bcw17N8l=g#Kt;^gX;(V z)OVBC^0qD2yf(Lu(@b>ly}n*}BW1pjQjEy9p**(IL}t)J)b?w4A6$Ks(-aAsbfCVB zY8ukzKW}V#*__;&I}hW$d=mBYiop1sbl`h0w->3P9U>h*D>`HVlM#sZkZ_>+106I` zgHQ^yTfnjOFQ1{Kkj(o%D7469ZL>p47KSO(8O!iK%^Vx zpcS|jD;r#-L5#w(>eHs~Yvzz}qx$cw_dnRM8IA2JR<3f4RaUMF0d0OKM$`7t-&g|82{ z(ek`>Jo5UhUw%7tZ$P#1fNMyb>s7@|6VE#GciV5BrMDY49sGz=w?YnOl)R3l1{7hj zV^_z0`$|w}nv@=j4FPLK-JD|pkcls#4+GIDAu+Ot1g@ps57qcqjegoRR!j{@?pDuP z=u0)EU(ZleG}@1nc7A!-GXA$ZTM79?@T%^~cFMszxA*zt2llCbK7(Fi*Om+Jem+D2 zWwmm?<3Y59-P*mbk^&949%;cVcTlCubarji1G6ry%oQ$FvIjZvP#x_JoKR;<>|C>g960wFxtqh(@2q^R}xdqBf#8E6CrK z9ndj5Iq5=O|0CF34lp0AT&WPSy8itqyWbsk?>k1wWTqq%9fD$^_3MoGRgZAvG}0YF zvGG_QZg{XUoV<6eNPK{-e7Z^*x}(D{n7iih5`CF7@JhdP*CQ1q!N-YQq|{$)1D`(8{)p>ZfW+ z1sc=mcY6wiN3jkxZ%kPwENXT2a!l6c<(@e^T%^5XnWFM@0QtHqa;7G9T^#9o!k;?%iS1#WW%T9INOMl1w4%Uj)IN=?C`zE?@u0FN%LE$FQ$+)UP5IJB7Aj) zS0sdVy);rlszCEExxU=ZG1HnbmuT$|Zo1M^jt<+tp2)+rWly|8en2(0ro@!WK9f%V zC49pD)f+$Hhv#{9Sq=yRYYh2Zth$8fqs91`8MX4!DN*ek$?nh}*CSj*l>bS*{3$U0 zv|al99*sSY`&yn_tvm2Y_gzBVgKsx?hqqqJYEpvk2Vxkt`ChzR+{+MYt&!{K=I@V{ zZ)+$5iN15pAxDL-sJP(izGgEViK|bu|)`?gb5H=0-^$Q|kx2y5g+JVcir@ zsphext4yj6Nz{Ke5wF(RiP_Wo9CYb_tiRNy|LGuYU+`$9dbYwha_P)hlq>!rAum7{ zwKoaTZq1A6y7y?%ApZod)=^f;w&XHbYzoRggy}hg)Ak;J^zwwez|kmfVqMc_!2U`NUQ2drbbc0V6QLd3&xpaQV$_vKi>O zlRh-3o^clDb@QTh?=+uFKd#|6;QYvXlm7B-yt|%qN5|Oq+lk2n@0H6C!O!89eQTwG zXR)no^G#S{xNu`>U=Ef!H$=KUZfIV=#lB!-@Jik`gGatHHyR(kTc=~+;}P5R_~yeF zz%&PS3-&GisZeKp&uZvz;VKtTZ(6-e%kkiApP^a<&rfLk=O@FB#-HkXaAqHfIoWzY zG9L|D+C&icil9w5B5piBmT*1}#hV?Bq9Z?I&s8+vc(@_6B!7`p|8zWX+RqGV@4h-t zRskb+1Q$mQdlFKjq+vf@jo;Xdlb^qTdEKv3y|k!2vAB`GTNkCz3Bm?PqI_j`n*&*F z_hWN~HT#?C!kUwlODJ}>?BDi4(8C#;l~7u^c9xOZH7;y?D7G;!PfYpgruaMNxHsc) zCSS98SO30nR>1HMwChBCbfMaZv(k+A6J-?E+cgsn4=4q$>CM-9br+k4&w>!*@eavX zrA=yZM35LzW$&_UakK(ia=3!#pSvSW<@0sWX9?&hawZV3`mEYGr!J3QTEq;w4`ulk zCOx7E`<`zTY)3sn^&O8EyM5_yxv?$j;9>jc8o$)IJ9AOR6{pwL93A)Kd%J3KZcb*3 z*q*dIS7H1>1C>FH*{+`_suSsuydU4P?e{}K^R#4Vgc&m{C2UTPv1XJ0kF`IwZXHOv zS8jAX`t3|l)gkko+g<|?*Khgi3nGwTkAt1C`sg;VjoqaTP&kMj1&y;}fswsveSAg1 z7O#WVBOn;a9JH7i@ic6F8$1FThi>)-H1vxNS9UoDFmoH*mS$ilFy_uQk+|fQ7t?Rl zZdom1vZD5ovhCY5N}|cSWuAo@X76shQ8;;y!IJt@-p;HPg;aKX0YR(_26@cFsQlg|9kAvq1};IuRH!u+|b28e5yti~&a zu*$HR`I%pG^f}U)@jsP*KWE(Q_)j(lBxRVGi*dS(?%V>%i@vr9G<54B>$3^@pmEe{ zN>VZMP?bcH@ZL=46>BNE4rwln@^a^`Pj{b^>0EPYF==3%lI^@@^_-+;UUhQRL92t+ z``7lo`25_o2&AgNbm!QZpl0oW^y)V+P)~l)A}Xb1k)LW@EMLKuzlB{$i7uG^@MCV5 zdrF7&QbCFB4_8pqxs)5TVZW{K)MmMg2UiXc%E7$i3!Mk`k0fkajy`wp90+i|9qe?o z*uM0*s|3vASJ8-X%Lj7x^!fbYswggNZ>RHc@%j8=W4H(;59%# zzryvG5W}Lo%?0%)YJU}?rh4Yncm5!V{SBW0jjIY1-(4{g{t*Pjs{1)pKN%idZxR&d0 zAcUjiT~%hF{Vv({KsVzANE*hwz%6~#H};KrIMi7H{gO#_$Y=O>Jv(2RF)hSK`kdv) z+@lWZKkiqiwP08T^t|7DF@vS@L-{ntsj%zQ0S&uT+1p=zmC$}Q8Zndc z9QV2xTHt)g*dnsAjbrbgRFP=7 zVZ-c%dEXEc6t>#;{(724Sq9Vq4m&(@!rPttS3p|dG7p|qMV zHaZ(k?I>fq_)~F#*@b%8>Jqo@>=PF8oz!o0K#H zd3fH9Xi|rlTk6)WlNz)vKryk4iDhz|G@J&FcR{8~e{obA85_AOuk>0e>Ky-c5cACIzLPqwAVLHvMT(9uHXXPty zJXdoB%l9bkFB^-Pi`u4MY8>CJeSFA$r`hDkCivPz3+^g1N@bJPC~o9$Q}6cZ9c2yq zTnKKtOUW)aEoT(WblMD@d9W9?Dpq!@QuAFEEy=;hA2gdy*)NzUEN=_|lwAwWnTM z*I<;ct;nI^lQ(xxT;;VTg-i5pcS^~WmouUOBz9T7#N7OjJ7 zWPf!^)$Ja&1N`Hv6;HepI&jyi7K+S6m*y!(E z#k)_}J7k_Y^B{MMi@2K+=rdU*lE#Y<#s>eKTZ32tAU2wJ-;d9Z^HPU4iT)! z9}7n&EII`_Cp`95UO4|?gP?-lM^_Nc6Cc2R6t~p&#hdi#y$ z1P?mQb%@m^DS$nq?wTt9rTB%T2JOPQww`vLV6-p5?fK7NCUU9cY}M_gkE1zxpAY4X zX_5`A?8@9#HXMeQdX2`~ZG}Me&+?~Nw2|3%vraJGVhoR#*ru~>hvR9L4f%UIlx((y zuY`Pf^a-wKSH_VK57FkM{0EP|I#9L0G19u+(@-ASa?9P5yR)9eE))yLdtWJhNRCZ5COF-^D{rL!p zKu%t8XSAwU?T0|ZA1w~8g1r9aZ)1gAe){v9A&~tSa%{@>Nw0z2+w?mj00Mdb%g^J6 zKrTN0|MdFGnb|gy8A(sOI98LnKz}GTY%aR}@VlYIdeA!w_om6K z&!e{eHSWsEuO{G!x|+CH7#8Djbp_Lu*sQ#5;nnklK@4o4KXQ&u;AQ)b zya|*4puydHY+?9ky0(MJ;vYOg^>Y4zqXKCPI&-$90{nHmym&2T$i!dRykFX!th-Y%M@SiitRU)#N z<$OE)$#TV1+v3`bsY7r+jGS>O%Yx_sgq+$|n8h|fR<%E6bGR2WgIb<@czMG<+0wBt z%q3)~eicMz%N6sAYdNQ4iMFvMS#CNfjE&G{sEzJ@D(^p@cc<38;{61h2t~RUP}ONU zboE2{GQXNTndX885>|#`aOXM`>8vx;s7lV!p12m)cHM(J5Wi5P&`wE2aoA9|Q!17@ zwUyq3u6GuxnmKx2j(l4*sKx!rL?sj* z)PgXiv6T)VTH4CbZyZOr*DV@%YvwvS0{d7m4Q1TG z2sy2VC2Yjk_4?&=SNW9&+~uQjPV&i0h}({#yJ}JBqFVJcQ96s0cQTub-}U8BE*XBBWLnhuByDC%GT%2^&MS+XmG?Qr zA+VV{YD{F!O%epUET5iUJwmEv+M6WK3zLk5A`0G*yD#n<)0g&=yeU-PvX>u)RpS^r zVM#DSz}#SdbB0$hib&6f5^jxi-g#5e=E+RBz}=t{#|-3Z&v~Kl%r;Z7x#F@ndf?ha z&mSgL(dyi`q~+9UaG8}P3zaget$#<94Z3z)1npC#pwWqrpX$CrDJeBwl}j+cW%f1Y454FUW9A*x+7v7XV!3kcmpn5^}KqxRsE z68sT!RT2TO{kYY6eH=DHlOrBC;jbx~)W1h6QoT-==uUJi&V-E_>rI_aW)1}O&yzYx zb2wo3G1y)-c?Eae#BG7)eU0fy9G*M6K!FP^*pa zz5r7;S(B`3iw)#yN$7q1Ku;`ZA_|o2xdq1!IAt}_df3xEj(p(v-|5BXa2v+V@491d zgLATepLUVsAL5je`Dzrg#nIF_I{N^JNOKy`&s`ne|7wESd*63v*c7HU7*0PU8ikS_ z^F~fJmmvc%?$rA+&0;_zCbXL=9wd z?(&7^L6p-h!ue0&oet~7@Bg$&t7Mx&D@F~`{yjD)s*}~ttt$DxFNVzDDd`AkgB)c9 zc8XI(@f$mbwP!k!#r}aV#3lTVoYTI8+(a=8?+rI$7Spas5YSt<~(K z7|e{;*d^&ju`u_BtWQswAh~3YP{`c-IJWE=*g&wVr(GeOVywgZ!#1Ok?tRv%*an?N$I_( zgwl)Fh2B6r>uk4gD8^4kaHceIGj(~UID5&-2NBc?%v@UB_U!6#huJYW@6O>*WfQS3 zG9+?)`fPt#66}p1y>=|4?nz;afcoa0}t8M_kS>n8cbhf-u#d#+_=wtwNr~%--$us6 z-&Eo-E#cEZU-_6|GL$m|B{I@r3m4|9!|qc-gli_p&x`7yAPV~8(s%*(lHvMy7aPKq z<*hdPg6he2x0#7^#3R)+U_WPb7^dbCO;JA7JzK+ABsq3W9VU8s=9p}F-INurb|;|J zVpFDcRDG9Ma_tJIipZq+KreOV#M_53_K_ZDU(-O+0QjaBZaibf`t1l-s8G@2^os!7T>ZnK;grg}Mg2 z_BVTrtmok@5_UMht(#g%s7%G^n3?MFX4@io=T1s8@}}=jcJBQ4*yO6fmkEPX#<{>K zv6K@gAL?6KRgI*zX_3<8Rt4qSoE$d`KCaPN|L}X_dFgr(Hi!0qc%Tc5~KK4z^P>!w?U4 z`i#%NS4AB~cSP0lMv5sKDIh1loUX3Lvvfs2fS@*H&fAS zX^I}Gl+|JHk%0BwPHMzq7aIKH{dyh`7d`(v@C-kA`Y$t)lHR+da&RLo7P< zZclTg6{R1ZnAu$Qy+#yHLzZx6tSAM~$zxpz z$B2N|6rL7y;6IWcST(+rwh zd-?WmPh$3HOnwMEW&i0AMp4yNMdpyZ2-knM6qbgpe@-wgbawm{`(V zavrL!pdR4^EXHRAyKw9%k&ZXiwDfHBuq#j_+8xAq9>6g1w|H}7 ztj9{KDk>IhFkk!6hx-RO)7B>cm;kNJb1Uw(hJVgz(aGtWYzV_%!PZA8&!J|XrR%(` zuIv)mFAm^p(}`GYFLU|x-SAyjV?^vcPeH9tW1NZQQaUvZwyb+86J8gQH853jh;8HD ztDbWN@yAxT6DpRmgDNpG6$-n8z8rs{H-V7vNR*3z641E1Lnr?KJyism_&VPGVdtJz zsQPEE{)X9?uIbp`Cz-uR?ZuG)*3iizBkd#Z@vwlYu& zowxFObLVvg{cHlxh%+5cM7-K&6!)zx#pHSqv-e0JtEh}8L5N%Q9#e#&ZuZhj9wrU- z6QjKlDt^m3Lbm_JiH_}SAfGqSUC6o4*&pSiarTQO+|CNbGAwFRfHR=0JBz%XZD89X%0xVdd@Tmr|xd51p8G2rydX`xa!kpsdwKG|*OO2&u>E2>$RJ^zydK`U3}&I$%sLM&ds)vH%G zP#8irg_PiJvMR!q%c5=FFC^=p{iJcl;wYtRgpKDVaHb>}YEuV@-~f{7tbXXkr9whg z!n?sR-r2$RzUaQz)j@mLCVTgx&ht7yHyoj^ORL_Ih9w|K_gh+JL+cyA^Q24o?69C3 z9=k7%zlcW<7OV9!ReqY0iGfW%`uy9fEX5Z^u1=Ou&)My4;#WGlZfl-{{Yg^o;25oLFY@;(K zO1TsI+?&9tvO(yRjEFK2y`+X5DBW!#j>^yNFZwAC$c)#QfIPpm)hLbR5PJl^Kow*Y zM(S*SXU3}XpSK-P@#ebq!5MiJ#GG?tja$B4c%5ANpyS~dFTO7=!o`22N+i>;o%$LP zMuxX_!Fw8S<`R~i{wH^SDb3U+d#Vhj`OEd#lamX+GxTjPEqb(OZ73sbX6PaAXp!z+ zDo@7EKI7hv_jYR4-7nx9EinPZ*9VIp=jG(lUFbz_#eJzQ8g0v`YgLPPvJ}%(-bfD> z@I}LQUlKDtlHqxHqEZ{U?QDvsrFSJAE}^56!_Xuwn#%opZs+zD@IJ3&`J2L(7_?i* zrNuVgCKjqX1Q5zu-6%H@a_v)X>yTT!Vt6>t%}jT3vSzRwKhuOHyP*sz0gR3q1bayN zFemGy*qebs8AMncJ(*E>DBGGe+Anl?Y=jPpBO2u~yU=|gEgb1jPv=;ir+{3vwbSb- z+mqpxWV0xE4uOJ<%ZEF~j+zwslCs zu%{i$fl;baRw{cZe&wZqS3@Si2Mh7LK7q&U6qSvCsu733<<<7$;9U9(I;$jPH1E8e zjT~?-WDVuM6WV44Vz@@j?vpAxiqZ_^b!@QTwr^`_f{GTWW5IESALrSe$%(m$n;}Fs z)00Q9tH^+Wp@1R8v=hoixR!zlWQL%;el0YT;^-VzbMxgaPnuOb2!m-v)^i@j1mM%O zii8oEQcy3C)mJ{TC26SS_pd0TycGlAkTd6`8$Xwt9bExi$Vw^JWV>kej`x#SdC>LR1GhdVi&A;COD&xOz!gjD8RDt?mfP(YZP zb7_x$JU^Zml?hV_zRR|P3;Z0)g$pq8nnV|cyUh9vsux)4#+di~K$$8}9af~FW~Myo z3{&T2psgvbyPU_El|pqPmou)EXa~x-xjwnP+e|#0J#YZOD(~P-MH0WD1y-;rJY-!= z-^@Vt)ctiD1D>4~O`a^N4xb)$T0+J)_|)e-{GrM_rCN{bHAAj$(%%-8wqbwj27L#GwD^GO&WuvYsQuQ9hd|D!tW-JQHy#i;beS39?g{cYm#`S&0~z242ve`nUysa`Otx)1Ju`JfO2R3E|kh9&H};GprkW#Ae) z?E@apohWrGTyR8YBP#eI`jl&qWpcAN%aN?9@9AYsI`A2B)t}(?#mwmk%g8mb5F&p< z+|SMa_Rc?n@a)f9RxbZboR0ioaJl6R#nsE0v!<`kU!eNm2lglS?QEJTx%@BG?^Ayv zi!O1hvjOKbR3GI$#WIm0g_t$}G1TDHsk&i9w;>f9CZB3P|GD54zs zyxwfT5PNnXM~9+2EXz4{>F~H?zlaO5c64hr-a5OGBQsbeq2NPpCo^&7IeB7`@VCqP z_s`4iq!Evu@I}8aZYrm?-4>0~Wp!HI^O;;BqS0NmE!xJm82P?xZA4M4weP|Z`3~?v zgg(uzBELeWt-q-PY~Q;y;=-;2F#cS1QQ$_Rf2uxMbnh4fp6a|rK=0|pa7Kwf)rjbR#=+)m^Q=KTv zRtVGsC6ow_|K?36ZVOh?cQU^}Gm>HZWQp4dlbhF*T&i~V#7rR$gSJj8Iog&1>IsN) zfcwjE#Zkd;L1taieP`xKhPP|k^*Ld{DhxSGTgN5VE_nzb|hlQK7HW52%TVb4lDD4^ahp z!N4&iCYDC&vkgrTcJrd3($*s*XZwy&O^eUJk`c%~(ylwty%lY1DX8euhiVozVSJ}* z(bRRfJSg9^-abpXBLPwV*JUo9iPWa&A|p)Us)%#L>F^UNm_-V8(UIq|`eB~mY`S8S z?3hQlH{ObU0sy5@ZslkcHp|=@4{A-OQgF{Jh2Lt&p7j9>LAKJw7*zI-Qh9wPZfiRx z!?#6msuTY&5Mc6@H9&p>26AgM;sib>XyAFHD%+nK>!1!FZ=yH~Js23Y1N_%2#u{1@ zjHPpQ*y2rWvB}7ckfB32?OCW(qy5gh$iAm+;%Z0lh0-16yVOK zLy8rYz$|$i8XAY=USdx$2>c=CF}}8Ixm&WEWVo%z91`l*|LnZ{^t3rwqn{NP%r*Bk<2(`S$c~CME}Y^{hw;w+O&_vh|mGrsdXnRR?d{t z5;KE892e8WV7}E(dNct<4f#r~f*_<#Ago*fH}DyLc4&QeF-r@bWT6`iH;!K`Xu<_n zaz4HZCF4euxeRl+;yDeppd|0=1fj%kRyD~FRXcJj41SdJ;mea2q5`&}Mep!wYM64x zJKNE+&(nv#QVt8I1?hNR#JOk%$h|8sm#V{m^N@|HRS_@ygcJl4K+k{W%@lT6tL9LF z19$`Q(W48%KECC%ZOfT`oz%&~<5IL~17$giQc&G0HU*h=1VNuo^hR7yvL%e_L&;H1 zzew{wUl3Ro6UCC;t+r>vlaZ_AYdWlL;!9?DN0oCfiFNS37V}o!yYlSchO!PaIBc+K zq*h&nTG0&6B%4{5+V0irVG3bW_G9QyVHz+;Ak59-G+FG1FsX;Bs4Xca>)Wn{;0703 zcr09TSUHJ`?ywnTEeN6Yx~dUVbL%U`NPuR8g*+!^eVN@0%$tl`TV4lHTTzTX&m8=3 z%qPX6_*~{GY(RV09G2Zz=_|qp#hr45Hc0F;gvdOf4R|UB$?(;QEk&#`Tk7#9%&|?s zJZ*7Hodu^g`+6@}$OsY@lwj9_sK&(iz# z@l!lz2L)6jnQjFuKI~rxSpOE^I9l~w*IilZ);E)QZpCPflRD=?N!>`uSdO{dWGZ^h zG-YPE$z}HOi&Px8$z_aZ?N`4S_>M+ZQn;ugvtlr^OaL-@SpR`>r+EDSyYUx5X2f~h z;sh#tad!p%LI+ehaLD$$u=u5k*pHqwH78SuC5b)*kL!w7C23ETlu;+jC%SKgrCa70 z{CyV{!FmHc|xsDTXo0b4&tOAMmxsJK;wrOGBT`+%M!S|1DOdQ+X zf4s;_SpDbZr6mTuw_K<-O*rwqa^QVKozWZ>1nx2<^#r?FkQHXM+YX}9gp!!H!KesA zUTcJAPwr%)QrWI+wnt=aefSG>n>gf^VrBu4Mdq=4sUur7pIQdKFqMkv&jS66=KDi4 zJxC|g@Xn@v;tk;U7cxc08OM~ zRY&PfDccU+1Y0BxVz56F)tWD+Oqh}d~Q39{Rp>!v+@+8zLbmK$wYaLAsPRYt2Zi2n> zUsJeyw{8)c3Ff?{NbEc^4bKNIKq>fed0A(vNH?N|2oz4{{|pQ#p|fjX>&>_7GOz@JCx z!jGiCslu0}SqFX+^v>kZ!~56MoRShK(pw-W*S|IT%PnpAfd?e|(Yxw|<5&U!g#-)J zzh0<@#g73(-L1!*Upfx&l?(?N_|fIb(DR!p^^HKSfOsCDKeNt%eo_TM1RsAu1fND{ zAt#+L>O|&a%OK5VD(CGJ1I>J}LQI8UychpnyJ4`$#8fljqU zW(}mwj9z$7WOXv|qLRzQW%j(0hm2fI_kOFeG}5O(9>Nxq-+)CTu7{{l-ip^3UT|Le z+2*C6-P#K1RUQ$jm5|2NcQALutGk7-+OlQ|rP#48M{@(DAZ2#!iTD=bCthFv#4EdH z*FYStl1{fQ4YzvvP07PuPBe|WjgZ{KXA^#RiE3Rh{6w{-Pi)xl#~Gz%EX+u$)rl{$ z!p;W%?h>iDG;zK^o;oLF+j-FRsM4@yni~Cywae^7J0X|?mJg5x!^`G(t0Mbm$U$qG z99BS7et!pjiy86QskJnYV=I;zgUZ{cYWE>tPA<-X>i=rUP94FbD7sQ*!~Kza!be?L zv-GHnt+mk!PKhyAxYfS>4;R1_Mei(FtbimtPYU?&R=t&f6n8MU)P);Z zRJjqi{jkO52I2;Yv|+G-eO^v-?&Q}sR}{X-+HYMl4z9~5$DkI_5v>4Ex#A9gaUlX2 zImx$1kNkGgL#z#EU;MPA!Qr@}>OJxI!y*0f-nFG23~VD{*Xm!-n*TH?075BQ@i%rJX2yK$|@*}UU1NGaY*#olMezqQxX@x^e1_vK+rYwBL+n-F8 zdfht6myma7+}*CqELpwP%YbS5lI{5SzvY*D*qCpHjF^4hQ>uU9@shz6_(epF3q~^vPo9Beq;mWdFofwWZ|Au zT)P~EohRwiy5B-hUSBFiu3viC#^r}a0fr{V!5RXwdGZgJfJey)OBkDt)1-v+aA4Wq z;eA2VPR3 z%jwcTY|-IE0``YN=$qRmqkUNQ5vOvMe@WEd`o%BAg7Ak*4J%L83B@!=-qUWGT3h{ajH5^{QK8t#&3%FlrpZy26@w zh%$9boT|AasAQ)Xbq9pq2?o-8A^$FejabN8(la*e0ulabTH+m7k;$w70$4YuCKL(2 zSv>Nd-IR2@ApbiMFeBzu(L`H8s8?S~i{6t&&~BAJ2G=dLba-J(tka7rG=nD#m6K2| z#OJ`j;N*@b=2atbWNC`lxPwAw;HW74b^-f3HMj*7thzeKsI)!)8r|oc+Kgc~jIzPV zCWvQ5hv|}Fay!!Bs*rOqQ>~kDcaa9=uJlR&^iLdq>G^vJ{HD$sJmW~5S~oX~Sv8V` zC`<45CRJtxOB~N#67VvTZvs?@42q9hN|TE~vS5xCP^cN8gcLsK4;WAxus$CLpkH*= z&S9Q#O6u)Y{9thE-xg$ba)T`xe)Ll&W{ffz)T|JX@k=J<9v{Lmby?D5gyB1xrcpc^ z48)nqO8+!SuMC4)ZW*g|OGLp~K67P&*uk=u6A}ah_f3x^M@5!zA2m19N^cRd`wB$9 zLaN-)foZ<87LZ{eWDgCUUi2?HVpND9re|h0D3$(EHWdQhj^`^vDH0z?KLzs^Ine}J z|Gr|x;>$c@&E$bb6J3FjKw~pQp_)a*{hZO%8%7I}c+JIr2{M>JG1kfzfQ;j)w#nvfZB{COfh{f+huV?}8>c_gA?z-J?;?r0-p%VW2RN?ISi+a)Jm z$!1;#>kX8gFlJ?O3vzc2(*#2h+2_wA>9VZ@6}j^|i>!>y%oE;yT|Th1Jrj%aX*tBH zN=`;*Mme+0r3VuN+oIZqop078sI&C4i&{UEYk)#$L^Z}(-uG)~Q5=%huFpL?P{@oVJK^aG#5o(j?oOU8%at8hZ@1@Nfn;MiWv*d*u+=g&CMN|}SrQ6(~ zgkwu3O*thxv%S@y|4Y5-m0{a@eZu_07Er9_ymFuucW>6-wCO6{!!a& z*i5=H`4D8r>)B(-hz+x|A`fS3Zjq<8I2dXslrY~2ZV@cfV1q?A)^@&A52YgJ0)gUK zqdW9m$!sMOo7U}F6Cr~;T7e#n$jryg*IZadk_3f|SwZXiCa6QL$3~{=%6CHf2nP`M z41LVmO&ZQBF%F2MQLQ27N`0=ErGuoFzTAP?{?g z9c2osgn0yYvp_?1H7zp9>u$;6ND@$f1o-qj`7A^Wj2+;ahY6?AfFSr4+xdxN_)Fa+ z`I&Lz-T0{;y5H}ul9De@7wlh^eDL3nr-4kkyikgt4qv#q=a)}H2@?5?gq|7#*05VT zB5oz4pqCZlrpIat22$)pU6DX;r%!lXAtYfRqD`0Nn;4%+$#Y{37j~pGzw6DHHrc5e zi3vVj?$ms-E^+`d?yF!A8jV=IU<1zIZJqP1LKA#!z&t7_r4i(&dn=^yj-rYCENm%N^3Sez>DTm7c{tT^bc0nI!m;;zCG3dwB&&s~Nq zy}jz2F?RZy)<>a=RZqg_&fJok)p)H)UY1atiCl>iCt!oN`kt zj8Q-bn&K=xP%M)D`$~sOKJ3I*bGu4uW>kKirVC&OeX<}F!r2^Pl7LUR)k=%nmL7~H z*cXyB<@9ph3TH&T-|^WEaQWhz?VK|lnFJc^y(zg-IyKkL3i;I5B1JF zHr1>>aeG|3F+sc7c9T{G6)?;5v>4jdYz(U992xNHYUwp+%CQjW5lWKxYPY2JR1oz9|zg3Gw#cRSD0=*kK{6ZC7i7Ra=s z=0vp!Wis9VQBmRA8kx9?i-iIp^B3fphfEZj^D5@zdEFfujN%=HSgn<`#UA_P(sJXl z;YQG4z>Lt5N7zD`ue}4rYO=)yiqTwVwTZ zHV+6wE@yK?3hOvIm6NJ~#1`#q>Yz2{-`5#%FNz zJxFn$a~9S~cT2DjTuP07Kv$2tho~v0g-tZKR$VsKcqZZnZWCe{g9;?C3kpdp&$gQt z%9OK=;|HJ}&W(YmtwY^Y%#Uccv!$eLdPefWdym^O1L2-{3 z*=?aPyCci9F|Znkoy)AdSRb=G8P!zZA9$(A&nxwYQiW54fd6J^U$KZ_4yR9$#9B*Z zj%+HT>79^{Fsa7oPg;D(?8+(CUKDvCne>=yOODU)A3HB=}=hs6b=|X29fY z^gii?!{63#3i-%i8@T6PQ(#E#le`zvaQiI5br|PLvaz)R>Wln}wwq~&p-xGGMfe@0 z*H|c!sg)vaX%P;AH^^=is^j04la9B0r!fG}4V;CtUJc46nX91|C$vV&XR1k7h$y#E zT)%X*%csDQbGNk?7r{=)0v@Xa<-DYJ%jd2XRMi44iUH%Fl+=9l84SUBAeax$DYxD8 znp8D1pk#3O1D+c>rcmWEp(?p+Xmany=6Sw^OkfDGhPxJ-SV4J<(@wsVZ)0PEaAx-PQW`wT{fz>kF`p2!BH^0W4B~WTE1-D3G>?r!&T-YL? z?GQNlwLkrI<9%byz^6R78|t?aSZX=n|5^IF1$X~;R#WtibA7LQb2wkdjhYyX1KJ}B z9bNI7-V-IPy<+;v51yc7YRlK9B&kUpFBu9q*U%|?JurBIKl8$s1Y)z^YEzdz$`=~n9Qc=wYtF`P|S~4Q*p@1p`~>`$_HR*;E4R$>P8`fvq>l+7vZJ8wH%O|4Nv-p>YJ5 z#e~Z@$Flo$+hK^!&z2^vRu{W^M=&1n#m*!L?nbS8)vuggli5EoJKyi3Ve8#g7{SN~ z@_0Z~q>iQ6sqgdPp2ho3o72Cj>bx+z4{rrNF`6XYBD`RH-h1_8?9j(&b=}1nb~%)> zWe0}e8q`t}@NqICK`2Xz(A&}lIzAAK9z(UniotkfqAy9$_TH|XlVNnd30-8z5`LgKBKNq{@25II0>&RMBH&DDaD>8T|K_S1G-wWR{>`ikQ*(IVWR6$A*`bb*c0d zTqUc2f6x`=Z?shq2;|$|>AqUGb^29T-k*73ay+PI!_eoLIa*Up=8OEhYm(6}siA&n z+)nFiFIp(Ub|c4$d!!?d+5T4F*?bJ@ON^%IHT)J5NMk%XWd*~`x!>y5%&|TQ^Iao~p`jv*~+jWA-o$`@m&n)$-nKCGNjEa}6@cs#Z zYrWs7M)8v_4$KK%x{qpWp^0L?UevzlZl`bNuT4g7z8#Vwr~Erx>397^3Gli1qCfdd z74MQ>bG}}DlM&KN#j@z^g?uI4%Oee|^7O;mK)usc$fWaMaedQ%$RsTA|w|FnWLK zHa9#@(6m!{POZtt?*qV|!mHO3XZo*c_qP8&X;?WP*Mb82ID<-@$UO`6vIqflfO$`W zp2D-Ro7L{S2$d&dxDPJ!9=v1YM_-IE+QISLl7=MMIF3rH(m=~u(glWSr5Ls!%M zNkzMlO7KizDCzy&tjL(Om0+A zBVitJ#y(|vS*{JYd50xChBjZ=U2EBZXNL_Hm}yTjM+WgQwFxfdjU-9w4!;If6PH#B zrQ{r3-13y*z8tON47-fiTGseY^SWn^!u_+~&KIWAirWqdcwht(mxCgEpHR~$?sjS? z*tsyZlH1+@tn35YMla}h{7{z+JUp~Rd034rl)+hF|LCc4rX9PHL3c|T8wrSQ{C&P2 zT42JTG^Xpr@n_&6$fseaaw~7Jp^MeQg{G3Ik?s=A-jn4oF5?Z5xYf^MgN6lu-MZD7 zSQ9bIMB@p}(C+>Z6;!05ZKFMDd0}1f;QK|V!oKy_tw0NQ!P3qJE6=6*UR%HHwN=yV zBeiuAYd@CWOA|y>R&$3bDLL7Bd6zf`-nLMyCQv4o!^-!G10@!%Be@!ChbnoOZ?Mg% zv?~N2l4ccvrU_CVpWUD#AMG3OVw@bfCH;Yp;h0izBzOO2n2$!@@h%gnNCy^5Z!aMO+;)iTwb*v zQk9uv_AHIW_H-D(_acV$a>r3y!?r0&57j1C7tOwm)%q-NBV@VZJRsk1!iN*Cq<(Cn zF&bpVWn~JeZm8~953ZYFSXd77w%oDA03B#%VW=R-4D845q(nqdC(!47f3|6)#xES~ zmqm@FpX-rcT+g&|SLo3Jr!hkCdaHL|B4i}&9CpoC=eE|F6vgpBdeYFzbMlhyV^^NP ztW^HzHMXIwJUenWUK;ooE1I~lbS`?>w@hZ}Vk`;=O}T}5P;HG7xnN^Ty^b#D*g_>5Yq)((7u zQNhv{E;zDMv%|=in=uh+ZBvBxTbusH%NgHYB42A2o86gUJvh0e2lOJ#!9EV~A!U#- z6kJiqZW~C87U{fPG;GTaI~mX$LT$?3Lcj7T)Y+Exp)E@fsXcs&4YGP!KKQuE!D*Cv zLvjOUL!t~;I|wQFhx4N5dRtZHd03$GpXO)S^>ZmHOkuA|BjZDKjjk(|*6yQ~BcAweDp^RjrTOxRnk@nc(V4%@ExRr&dPH z2SliUgVa=Dno4SvJ1+M60MbcX@T!s2+!@3dr{UB|pnXy7KAzM`+2dI+XK*q?>7{*1 z=+D*HQ#tgY+jvwx6r$S#O?T}{E$<#m+m?`W_$qUb$1g%N^tgs|WBgFZ^*S@0l= zr!HG5zaX|aeKYZa{g${LMhGQ$R3u|OW|J84ftg?^YqGinY6p)@7?Qwp$};7}zGZwvuR&OF;9h^N@tdixP%{hJ&-V zXpbM;tHPBX>n81LO$?TFszR;&I(HLFajP0!j<)By%5*GvH~WmQsXelLp@{cJsx#~* zOdPtt-5t(fT$EtqRT#iM|H}G*$eRS)49mC-*Zy|ef{;NO(7JjXOTS4*d6PySNER4; zWVq!KxW&ydk2gl8-`Jvm+EZ+C-t`>a>U`-@k8c@46#X3=@4CgoqE)k{=1+VB9D^v0 zT&gKMIJSGUT5-N7b`S3VO~@4p){C=q+z$lOA- z*lv`kpf#RX5%v%e`Ruzp^!6oP+aB%vHrO|a3O>k*$xqJn=}NJ(W>P3k9?8z|fYsL; z)oBPoJr5qP*Chs`GTo;Kx_?#EjpVp_7aL9d{!26YqbbH4#bMz*H0P&OQ6uTp+aMnR zm{oFBLE!zc#5>0v010k4LjFezY2z>rOUY=W6#i@tSF8!J$3)A?xVY@UmxLg%(dv^<`_6+ikg^aZ*vw1J8%_ z+SS$UHq-|gCdpBV6(mpx$g+7|&V8b-wZU%4rN({djmZV)``aMj;2Vrpest6ab;&?) zu>Rhtgvphqy=o7F$Co*;?TL)jbA#lw>~IeJPI7mOyoPLrt8o-&{nWQ1A||6jfvalG z?sZheA?D@o!eT>MptIbT@L?FUg4BWY$;5LkVa8R%ihCvP+(zv0PD&Q=Y%X_RkBu|%&$WVOch;LqFnU1u1jm7MCOBfXi*EsE&LE7iBTJ$ambwCm^lia_kw$MBnxo z_<0=d7>OQhO9>L?kN5p4AC;8L7z=eO%wHA8D$id8W{j{%Z(G-2zxxb(_T2t~Vq1af z%ss=__Z_(6l>7XD`-MrRp5oE+XP4e?_u0%Za|(B!XjBrTBMCaC4+EVf5nG>sK z8VCV+Y)bUAUAaIb&L6#g@#b~D(cZ+7{N&p(b0Jz^Gio|j57<^c=`cwZCsNgfe|4HG zkMMOLcyria-waSYnLo65EnB01&8DNXT3KRksYlVFEwkAm#}@$F@?80gy?ex=Ik(pi zP;<*TI|TV=z)9rT#h;JjJ|r9CTW7$mm0lYR$Bq8R2RyPqk6hrNS)xZD`x}?$B=FOb zEBP~<+?TV?cQpj)Y;=#oaVP^|T041k>*!s;bBT3sx2p{!A1`cL1PgB;&!w{D_qhCT ze{`YPqFx<)?i^ZF=(pj|pA}fj^ll|>ByP&GeCl|rHT}Dhe0lgw7}NEe3QD`~$A268 z?C#9k>c&c=GI2}rxp78a?vZl z58=n=TPp9?(@hwP^Sl4<7)1+%)U=57zx+1j(}O*{!GR_9ieSRI>fc?{``0k=-(N6t zF{tFYFQW6;fBSz|V!-!)|IOts#`svB`s}^mb?mbP;4I_-Ua=0k>7L+wQAL%RuMb|* zH|cd1VC}6i2cAE+-5_aqrdgSPd%<(gX_6sT$vc_o-#wsb?F;(3dG2?Q?=LDI#^oPv z*%6CFXsIhZDo0ELo(YX6oY95nzM{-3=aHDhFC#u(1%{^F*Z$#umvA5ZPfM8?sfBZ#Jtz2n*L!h9Mab?S zme=vAVZYO=%s1n+sh{nUPNc|s>ezO@&p=50!`iZS>nXNkxKa}d)ShOFtdG|2A6U`# zC&`@D%W#&FU?buS@^8bbq`!`%s4TDkM;}F0o=kOGdG3Ax2#ntbx}q)s(JR~^MbYSwqIfF)84dEE zSk}w|kK~p#6=I_Pr?o#^J!=cJ4g@QroNhyd#bR0=8AvPlm-&S{HlL6my-&1D%$W z`%8 zzu!iW|1c?AD4}J_H*VE3P4a%VK|m2i6J<1n0?ti3vR)2bHCgJDXM>FXzypv!VqCRd^xr(Pr8@VV#O#3fYGvxf?3@P|f$p#V3Mf+nw`<-g`GZ2&?$tJp>H zAazgBIM_^14=&amJG!`^>dtHd|A52^sW^j*9HTj}^KHhjfvfa$Z=tY_CC<(m8v=S0 z1ykSgP;uA=EqtS320mV4vP2>3fl3>yF~0xkj|fnG$Jyk5&vLP@ZYhCwM zk4RWRK0JzQfC4s)j7Z-aLjj_DGdhpv9M2k5lJ&y5H=A0v@#gwc6;+ECcy)thP2bi_>&Cw!3%+5s0U7%PZE(4H;! zX7Gc3RYk`Xais?pMz>og3C7k+fVu;Z+HT&8!!lymO~ z-A^8mcRc1Yu6Ysk!qQChoKh5hmZkkIWD_hTQhN}Ku{TT~?pufnCc@UZrAhh?_kKY& z7_L^`c3h~943yugX?MRa<$7KcWemoan4uGi=B2?Qy~nH93#OiOrFK}AzaS;9*d?Fzhk7DXc`B1G4-?*s8|PEC>3M+tv8eOK@kYLSwP{0u{O&O(l{FS4 z;(54wz11b;&Ae>1I z|N2YgN#r>-cov_mPks<*ak8AsgPEy)0uy0a1EI+++wCe#`=EBvH6638c;EHQ7Kz(w zC}BOp_KG>Nly`9;TLY7_AzP{FI-VgDb8VQ$(X0% z{MNAy&i-QluWYs6-|vC8I+k~k7Mmvd%B`&$0~z7g2?)7gUBFd&2hho(Dbu7^Yt0&Y zAPo0ypl*XqS;6GO*^$Nj-s1sQ`*67iSSZDFITPJlQ{kXd*=LD=*6ovGllIhP=OKG3 zWycDTltAt|&6FGkMO6zJDQt5=gQ?g&o71kxVfSRe53mc3dEFp*={Mpg8A<@IT>+I& zjuS|>UQ20JlL5KMQgZql(W0F?kr4A|h=SH3iAAF2&i9g$Zv{%)h6)8+cgfN{#Oq+B zb-z;i+#Ek_cU3MO#ktu>So^GOt^jSiz|rfJ>bK`yQbN2YiFeq&4{SMHpS9R)#lWL}H?V0YgnShad)EX5HC4LpX%zyG6+`X#l*zogZd4sP{Ug*jx z=A&WhRO?oz`VdCZJ^0Z6}cKwzoz??FFtU&R>vtEx@@l|_$fJ&y-^@6G%!Lh=b^q5 zE-M;2AC**TV1l|0{O-EpS5{9~dU9_&P?E z-mWvtjw_ZDsY`=w+yHhds_oPZn(7S8vk~Kk2bN;1&nW>1FZN9>q^cGlO2F~uD;zgc z-D5XPU^xd0A2wy0Sxd4A*>F5k^+C>1y_QDqfjYTxFRT3oHFDH6^48Yy$E8%qG-X|D zvs&KW9jtUn@4%f6j3HIE_p(aaL9k>Gbc>ap33lol+f44uZ8`YRLv~D94kP}~uF+wF zzd~V}Uhket7e!Ufal+b6a#xsp^gTy``~DMZy|gn=sMnhEo@4EUb~et<-naCEhxSD= zHwt`OjQ)>z^rb&nd!cFdT)FkGH?GEyo_hq71~iGx4lb2_`YpG&*gJ&RI;wEZiEMH^dT~cLB+65mS7n7ZI^jTPv5#-_+={UqZ zk}fbbBL-1cm?6Bf>|NxxOKkBd(|JYAxiA|pko*1fF?{j37OyIoaS@Asg8Oze-Z-2& zgT1~u#i}@g8Sb9f5@le9XP3T3PQHCoqGFYAiz^+h=wb9SZje%!&N?)whKhi^v|cM@ zj^VtW-csecM!_H9IHkj zyepsL7^}oo-+13+AeI(oHSP-AOX-Q;n!GMkM3z~ariimKb zYn_XER2&!w9?}vU>O7_DcQ4C1Oi{wT!ei7Q)yc@qJ5)&%IEqIbJlm#CJ5+Cg52)lO8Djzp2YQpa=1tU8 zO2>#T{S{Yz>=$Ceoe++|xTVOJ{CXdfX4ZjY?6nuzimQ7(JIjkss~L$K;ig*F_TW6{59;6`Gt4Z6z+A zkt4SDBk1O5XduAyN0t7KcS_VqslvX)Qo9ntLU8@7>MoH_Po3h04e>j=vuKUDyiNE^ z`_jwiL~%>DT#t@H!8<>k+?}_0)<;~xb$Qsza{}qp6@D+cqEx4;-({7lMHcMWRBG>w zj!O#h_f3`WNckm(Oh@zOKN$7Lam6RpyQl)DMqjAzeoKkUmzDzO9@WDnxtt3xIY7zY zMHYp#*)xl6!GONzv%&rM?kl)XskPd0dc%7%SM4RE8e%88JA{E2vFn0{V;L$M7$RUz zh!a@7#pzVdqz-fukSz;Q6R9k1u%T3=xTv5aO%EP6TC2S)hcf-3gK*n+8erO#04&w8 zONFGZ`ErMIEvI=h(T`c-H28lR3N~ER5a24ZmyQyuE~`RGGLA{O28TvT48N_frRG?J z*Xj+Fyez=2m{&!*c;98s;R_NMe*FQBfB-p_s7kX%nsXd9=inTUhR*Y{k<^ZY#~I~~ zyFf7t$IAmKr*x{f-(k~>B@EbUd-tS8xoo)B-z@Mu>^(=oe9ML7BZ!p-Sf*L7l%EB? zw4RBx&78>r#}|7NzFqQQW?_`8C^6Aky?UbL9`~}hU$Z-(eJyO0i-`LWJt%6X#Ti$k zgMWJQ!u|B;eWwE9Q*=#~_a52eHV!j;JF^DVa9(SkzFMC+ur!}Zy)A$_Si8BF{2s2z zD_0O*!Y@kKL`EqMhb%}8NXd-bU2L)Iy={2_w*0C#2vFZbCMZ~Nj=8XLPYa12t={HoSgQkpl1R7TdfE z-!*2AQM+h|)oG+{0@-bO*xI`QB1fC!+@l3xc$RL;iaQ74-{A{JC{+!><>=c7LY);p zCB9j+RL~Twa$~%kt*o4n!_E_yPK?CoW0EA^P8pEWUxSISlP8{vIW`BIyurr;6%AJLD%@;M;C*StMiasCePC9xum$E!_zrwY3Ti8;;PhGwb zy8DAf_~>fs`_)vm%*qo_Ko^XF4sAZ9g~BN>Q*;0+Qj5^4bur;|a6%w@VhvS~4hd4U z!+J|3C+J}SH$X7W-w5_f`3`&4aKddds9@>?<-r0-oxr<)QOSNS-S8NGF1m2H|H5sK zVIe5tN^WScD%LECxQ09&WJb$fJ?7fuC>i@uC_sDj3uP0X(%<_&x7;fx$27sP3Rmw=C@(NB)wzTre)Q9u zi;D&5#!ej@ueF!cPPk&&+g^10?bJH^cRu-t;%pxNYknq`b{jR`A=O8Ot9u7>o$7%X z^$2x&BuEM@4wRyCE#U%fl)CRsn4!>s>?r$Nb8MQNk8yP{WyvRRL(A5#_Oad&59xJ! zGH_+esgv(+^$4ia_CGYNQTo?trM#GKE^$K--vuJi{@J$u$Y z-R9`Yb=VbkXI-G010lGJoszj!&0y&)P*~!`|K90>vlvbi;+6v5Tw2{NAy{${hdy z8b6G+J5@5Bvs8n)%@>nj4593Bn%|r=LkP#F_z6i%Zi~1w8bh-z+GqxSOd7Ue)#1{Q zCZ)pbuDBn{HgxfZ>mh62Q#W0W1O&UCztmi0E~8haS7FUM;jnJMHj?7zx1I}$LbCJ+ z>EpNd_L|HE-njFt} zJ{>#ZR^{Y8Clx^ntZv%H`C$Ubk;$De~w5!_ozh%Ep<(B9p&JMg!^hALQc zCd7IDAKCIT{hp*tQ-{km=+aP~mY>8?G%Xq14ii&*`*OT~-;X{5HzmsCF zbD--nx!=AXJ7IutG0*v5gSQZl{pNEc=#F2|2e5gxa?hv`Z@#~VFt8~AXaYAbJ(u@E z36aj*m6W8#c#&zvcb<#y%xs}N48tE6?x05jt%h)rHzC?7g)wS2F7JJY1Mlt6w;X2L zqW4MJciG{#O>C>C4fe;mP2)l08?Q;eQX*BV0ml22#zUaBfm5nXuD;m^K0WQN4U5ml zi#qygnp9ZC7Uz0cvS)=P+jkPzB*iQ}N=W`!WAE=r4K*es&;3`b=r_wriy8?xW*V=s zMbQ;hCA)q2lJQz{j}C~*tlgE^V*^E*-rB^#W|I>u*Bo(ESajJ6n`oFVXPl@s{(FsM z1Xw0a`p7gz3`BqeJClG0*iWdR0Itnfuc;BgGM*_vE?Un;o{dFZ8$ps@ip@q&aCPLP zHEixH0Gr*p>QjW}J)B*iS(n(HeCvD|hl}sP&O^9Oe>11h<`#}GsQ>v{@kCgcQyK=w84VePoYIANEt79|Y-PR2YM=hUEzK?TX z#_W~2{mtR!Z^qIV50+Q$cQIXET1~Ms6fukB7|45|vW};f z+S~R`5j50ae0qlPY{KNKLNEumNX78%S#kNCPRpV0B+D}R6-1PAtN!KUbR*lao)X8q z)Q}Om>6CZ7Q@R>VLR4KA>9Ky^X_4_2E6^=8De(5-Mk^xB;#>(j`4;|exSUrlBAUc+9V z{WaF0_!>*(YTD3P_)i4)6x9SoU+Ct82u}o_pOH5MKp(3r#T{k3p0EGS@Gs#{SFKmp zb2W|iPp#ZNik}xkv|YyZ_)KU11<{?5`-uf{oXQv96fcaZd1QopqCu0|ieNn(Lq7V> zC+`2sUEUKvN@J~5yb;xX2dZ>bu9x-70WR*<^^8n5J&L4IJ&XFu3HqPp++PyNf19)X zhXnHFcWr-6;1&KUf!Fr;`Lm##Q==rrd^wT+@7?4!!g{LvA~4Zm{EAjsKLe4V&cL zvJcL?<=>$I!NAQMJbx986;eB-^k5R)p@%0_Y9h_RX0p#lS6P`4ei}L?V zwy6FE?}!FK9|ij`>J{<-fGKnerM!N<5JL0WYv#avc^p%s`r1gl;7292?eojn#W3es zaXUuM2UFU;JR_Q zstQa>yr`v4q$>tVYS@0q$a6a#!Rbx>t~4IFDFfZzVLi_pqx~|UXo@znVd9a~37YFl z4Q-%I>r3Kd54%abU`9(DGa~@DW#lD`b|O{ouTHhTS=}l$F3AHD{RNQWS4~l-a)I05 zNYUX~#ls>?yU9Ij0%=xJN;k+1j0{R^aKr=f&9VX253SpCX+eGIu>CxX#X(PUI}2)L z1^??gg4Z=Tw}!P^gwdgb*IKNJi#cgNxw0vEX^b0xGgf!0Q4n;@24QH z%L7lh6WFVRE^-dJrn@Q}-leugOr0}G_a-e{lc~QlZ_KPSEC40F16w zXicUYbr%3pJ~vPi{pFQIi5-go8{#OrM9@rQqr;&)K8{Zd0V2nbSu zIu3HmS*7DPJ3d;QI4ZX_6S1th(3ET}*@jzhvV6@Usv}~kmY`9@3 zuEJ&PVZ4Y%Cgy;mfdCNES_q3;@2(*}=MITqlz zRHQre$X{|vp5ing5Nl9FHM6%$HRD(w`bJV%iG|fD;|=}0yw4%`u0C$)scTmcRKJ>7 z8^5>N+I`ocB_F+X4Y?32Yuuz(f1r1#X@ztIGk~U7F*HH4f+OP zc>pUFaFu~XtXOCbP(+kSl=oYEaRehUC{s5iqKit;!q@H(iYgwwAPf{a&^$LGugz#U z_I+T6QX0d`eR_C20zyGvCuoqZkvv^`oJJ-xE!69?361t0wq0oV7Nw_~fY>*^pqs5w zpP9lwdDJp*Si1=M3dE*0!1_We?{F0kUuX>ZzmaW$uW&tg-@#!Ef&A3J z77ZO9$k%t!UOZG5r8KC$RKM2CM6Lk-D)pV4#SPs3O$2X7AToaF>$4>3CBD(Ro?UJ^ zp!I*O*pR}Fuh2*OlN|t1GYlUuVp;ULWO{YVVW>NWFdj;KIz3=(d1q3slNbWx`L%8R zQM*b?7Cb~3b}xDE#*E($(ntdeVQ2gG(*Se2KELK*dyVH(UVE|Wadk#vKYSObbm;(1 zK)-b?Ji5qxdo`%o+NYiYSeaR+v+j&Ut|m~gbA{ij8%K!ezC%FM*WBGTRG9IqB)+@sBT{E)NcTi zV<6`~i$CrLc{ypuFfN7-UCWo%;6)W^^td$IWx&Ukv+CSeUZp%YgLyUN2HA9C;dfVf509sj)QGh=(EuDv- zG>qaznU%G0>Du4+puqjhlNX=8wu4{16;hLyc*~G}eZ{^%Bb26}yqKWaeF#8!ITW4> zK+MxP?sFKS_Dmp^U+B44VS9-!ueF5~M5?16FXe4CL${gTQ>A0oOg2gV#u2FuIlq$y zK<*W7&h!?Rc2;Sbhp9QPVTOuKv$0cK!T@lF%!2|~YC)!^Bro)dbA7Lj^7kQ4%5FuL zKUomRY~hMw>01hKBe`+CDMp7eJe7V?Je8XcJ3I^p+rP{#y$dU4_^P6~(c?gA05eh= zTp20F+TN53Cn^5}aj$6L-rQ62KQGoJy@9KWy`rbBloKS6440X*SGkTve8>dsE$^jAgwa}Q$oCJy6|Uo2 z_zDP8(rHjfU7hYKKYxE`f&_Lvob|>a?)cws8>__=Ec3L$nJ5$|f^DA|ZR$V&Fjdav zWr`dFmFUH0{2=->XPjP+k`*I)41`$5)o<=F_IG@$(^71aY3t$W3HtwR0>L~!oJ literal 0 HcmV?d00001 diff --git a/app/src/testDemo/screenshots/snackbar_medium_medium.png b/app/src/testDemo/screenshots/snackbar_medium_medium.png new file mode 100644 index 0000000000000000000000000000000000000000..a9f131fd71391ccc41a1dfac688d88b46326d21d GIT binary patch literal 73925 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 JsgR!U{{Y&r-Rl4V literal 0 HcmV?d00001 diff --git a/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeNewsRepository.kt b/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeNewsRepository.kt index 070c7ed38..0cdec6090 100644 --- a/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeNewsRepository.kt +++ b/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeNewsRepository.kt @@ -39,7 +39,7 @@ import javax.inject.Inject * This allows us to run the app with fake data, without needing an internet connection or working * backend. */ -internal class FakeNewsRepository @Inject constructor( +class FakeNewsRepository @Inject constructor( @Dispatcher(IO) private val ioDispatcher: CoroutineDispatcher, private val datasource: DemoNiaNetworkDataSource, ) : NewsRepository { diff --git a/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeUserDataRepository.kt b/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeUserDataRepository.kt index 4871baad9..61ab422af 100644 --- a/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeUserDataRepository.kt +++ b/core/data-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/data/test/repository/FakeUserDataRepository.kt @@ -30,7 +30,7 @@ import javax.inject.Inject * This allows us to run the app with fake data, without needing an internet connection or working * backend. */ -internal class FakeUserDataRepository @Inject constructor( +class FakeUserDataRepository @Inject constructor( private val niaPreferencesDataSource: NiaPreferencesDataSource, ) : UserDataRepository { From 0be0bc191f4f9441a1530541dafe0f68caa11ec6 Mon Sep 17 00:00:00 2001 From: Alex Vanyo Date: Wed, 13 Mar 2024 15:46:54 -0700 Subject: [PATCH 37/39] Update usage of material3 adaptive to be edge-to-edge Change-Id: I481c79db77bbdd657182f5355200f63e2355f40d --- app/build.gradle.kts | 1 + .../prodReleaseRuntimeClasspath.txt | 6 +- .../samples/apps/nowinandroid/ui/NiaApp.kt | 8 ++ .../InterestsListDetailScreen.kt | 79 ++++++++++++++++++- gradle/libs.versions.toml | 3 +- 5 files changed, 92 insertions(+), 5 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 56e265c45..972f95389 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -100,6 +100,7 @@ dependencies { implementation(libs.androidx.navigation.compose) implementation(libs.androidx.profileinstaller) implementation(libs.androidx.tracing.ktx) + implementation(libs.androidx.window.core) implementation(libs.kotlinx.coroutines.guava) implementation(libs.coil.kt) diff --git a/app/dependencies/prodReleaseRuntimeClasspath.txt b/app/dependencies/prodReleaseRuntimeClasspath.txt index 85adaf6fc..33af141ce 100644 --- a/app/dependencies/prodReleaseRuntimeClasspath.txt +++ b/app/dependencies/prodReleaseRuntimeClasspath.txt @@ -123,9 +123,9 @@ androidx.vectordrawable:vectordrawable:1.1.0 androidx.versionedparcelable:versionedparcelable:1.1.1 androidx.viewpager:viewpager:1.0.0 androidx.window.extensions.core:core:1.0.0 -androidx.window:window-core-android:1.3.0-alpha02 -androidx.window:window-core:1.3.0-alpha02 -androidx.window:window:1.3.0-alpha02 +androidx.window:window-core-android:1.3.0-alpha03 +androidx.window:window-core:1.3.0-alpha03 +androidx.window:window:1.3.0-alpha03 androidx.work:work-runtime-ktx:2.9.0 androidx.work:work-runtime:2.9.0 com.caverock:androidsvg-aar:1.4 diff --git a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt index aab864f5b..51c98cec6 100644 --- a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt +++ b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/NiaApp.kt @@ -179,6 +179,7 @@ internal fun NiaApp( Column(Modifier.fillMaxSize()) { // Show the top app bar on top level destinations. val destination = appState.currentTopLevelDestination + val shouldShowTopAppBar = destination != null if (destination != null) { NiaTopAppBar( titleRes = destination.titleTextId, @@ -207,6 +208,13 @@ internal fun NiaApp( duration = Short, ) == ActionPerformed }, + modifier = if (shouldShowTopAppBar) { + Modifier.consumeWindowInsets( + WindowInsets.safeDrawing.only(WindowInsetsSides.Top), + ) + } else { + Modifier + }, ) } diff --git a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/interests2pane/InterestsListDetailScreen.kt b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/interests2pane/InterestsListDetailScreen.kt index 335f83371..a6c2edcf7 100644 --- a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/interests2pane/InterestsListDetailScreen.kt +++ b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/interests2pane/InterestsListDetailScreen.kt @@ -17,15 +17,29 @@ package com.google.samples.apps.nowinandroid.ui.interests2pane import androidx.activity.compose.BackHandler +import androidx.compose.foundation.layout.PaddingValues +import androidx.compose.foundation.layout.WindowInsets import androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi +import androidx.compose.material3.adaptive.Posture +import androidx.compose.material3.adaptive.WindowAdaptiveInfo +import androidx.compose.material3.adaptive.allVerticalHingeBounds +import androidx.compose.material3.adaptive.currentWindowAdaptiveInfo +import androidx.compose.material3.adaptive.layout.HingePolicy import androidx.compose.material3.adaptive.layout.ListDetailPaneScaffold import androidx.compose.material3.adaptive.layout.ListDetailPaneScaffoldRole import androidx.compose.material3.adaptive.layout.PaneAdaptedValue +import androidx.compose.material3.adaptive.layout.PaneScaffoldDirective +import androidx.compose.material3.adaptive.layout.calculateStandardPaneScaffoldDirective import androidx.compose.material3.adaptive.navigation.ThreePaneScaffoldNavigator import androidx.compose.material3.adaptive.navigation.rememberListDetailPaneScaffoldNavigator +import androidx.compose.material3.adaptive.occludingVerticalHingeBounds +import androidx.compose.material3.adaptive.separatingVerticalHingeBounds import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue +import androidx.compose.ui.geometry.Rect +import androidx.compose.ui.unit.Dp +import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.navigation.NavGraphBuilder @@ -34,6 +48,7 @@ import androidx.navigation.compose.NavHost import androidx.navigation.compose.composable import androidx.navigation.compose.rememberNavController import androidx.navigation.navArgument +import androidx.window.core.layout.WindowWidthSizeClass import com.google.samples.apps.nowinandroid.feature.interests.InterestsRoute import com.google.samples.apps.nowinandroid.feature.interests.navigation.INTERESTS_ROUTE import com.google.samples.apps.nowinandroid.feature.interests.navigation.TOPIC_ID_ARG @@ -76,7 +91,12 @@ internal fun InterestsListDetailScreen( selectedTopicId: String?, onTopicClick: (String) -> Unit, ) { - val listDetailNavigator = rememberListDetailPaneScaffoldNavigator() + val scaffoldDirective = calculateNoContentPaddingScaffoldDirective( + currentWindowAdaptiveInfo(), + ) + val listDetailNavigator = rememberListDetailPaneScaffoldNavigator( + scaffoldDirective = scaffoldDirective, + ) BackHandler(listDetailNavigator.canNavigateBack()) { listDetailNavigator.navigateBack() } @@ -116,6 +136,7 @@ internal fun InterestsListDetailScreen( } } }, + windowInsets = WindowInsets(0, 0, 0, 0), ) LaunchedEffect(Unit) { if (selectedTopicId != null) { @@ -132,3 +153,59 @@ private fun ThreePaneScaffoldNavigator.isListPaneVisible(): Boolean = @OptIn(ExperimentalMaterial3AdaptiveApi::class) private fun ThreePaneScaffoldNavigator.isDetailPaneVisible(): Boolean = scaffoldValue[ListDetailPaneScaffoldRole.Detail] == PaneAdaptedValue.Expanded + +/** + * This is a direct clone of [calculateStandardPaneScaffoldDirective] with the only change of + * passing 0 content padding to the panes. + */ +@OptIn(ExperimentalMaterial3AdaptiveApi::class) +private fun calculateNoContentPaddingScaffoldDirective( + windowAdaptiveInfo: WindowAdaptiveInfo, + verticalHingePolicy: HingePolicy = HingePolicy.AvoidSeparating, +): PaneScaffoldDirective { + val maxHorizontalPartitions: Int + val verticalSpacerSize: Dp + when (windowAdaptiveInfo.windowSizeClass.windowWidthSizeClass) { + WindowWidthSizeClass.COMPACT -> { + maxHorizontalPartitions = 1 + verticalSpacerSize = 0.dp + } + WindowWidthSizeClass.MEDIUM -> { + maxHorizontalPartitions = 1 + verticalSpacerSize = 0.dp + } + else -> { + maxHorizontalPartitions = 2 + verticalSpacerSize = 24.dp + } + } + val maxVerticalPartitions: Int + val horizontalSpacerSize: Dp + + if (windowAdaptiveInfo.windowPosture.isTabletop) { + maxVerticalPartitions = 2 + horizontalSpacerSize = 24.dp + } else { + maxVerticalPartitions = 1 + horizontalSpacerSize = 0.dp + } + + return PaneScaffoldDirective( + PaddingValues(0.dp), + maxHorizontalPartitions, + verticalSpacerSize, + maxVerticalPartitions, + horizontalSpacerSize, + getExcludedVerticalBounds(windowAdaptiveInfo.windowPosture, verticalHingePolicy), + ) +} + +@OptIn(ExperimentalMaterial3AdaptiveApi::class) +private fun getExcludedVerticalBounds(posture: Posture, hingePolicy: HingePolicy): List { + return when (hingePolicy) { + HingePolicy.AvoidSeparating -> posture.separatingVerticalHingeBounds + HingePolicy.AvoidOccluding -> posture.occludingVerticalHingeBounds + HingePolicy.AlwaysAvoid -> posture.allVerticalHingeBounds + else -> emptyList() + } +} diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 26da6907d..d3ea109ef 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -27,7 +27,7 @@ androidxTestRules = "1.5.0" androidxTestRunner = "1.5.2" androidxTracing = "1.3.0-alpha02" androidxUiAutomator = "2.2.0" -androidxWindowManager = "1.2.0" +androidxWindowManager = "1.3.0-alpha03" androidxWork = "2.9.0" coil = "2.6.0" dependencyGuard = "0.4.3" @@ -101,6 +101,7 @@ androidx-test-rules = { group = "androidx.test", name = "rules", version.ref = " androidx-test-runner = { group = "androidx.test", name = "runner", version.ref = "androidxTestRunner" } androidx-test-uiautomator = { group = "androidx.test.uiautomator", name = "uiautomator", version.ref = "androidxUiAutomator" } androidx-tracing-ktx = { group = "androidx.tracing", name = "tracing-ktx", version.ref = "androidxTracing" } +androidx-window-core = { group = "androidx.window", name = "window-core", version.ref = "androidxWindowManager" } androidx-work-ktx = { group = "androidx.work", name = "work-runtime-ktx", version.ref = "androidxWork" } androidx-work-testing = { group = "androidx.work", name = "work-testing", version.ref = "androidxWork" } coil-kt = { group = "io.coil-kt", name = "coil", version.ref = "coil" } From 9b4c22cb2d7ebde5ac7d2ac8b55c503a206c1e2f Mon Sep 17 00:00:00 2001 From: Alex Vanyo Date: Fri, 5 Apr 2024 10:40:12 -0700 Subject: [PATCH 38/39] Update to material3-adaptive alpha10 Change-Id: I810c36323a35c445c22dd3876c52df0360a5cb48 --- .../prodReleaseRuntimeClasspath.txt | 94 ++++++++++--------- .../InterestsListDetailScreen.kt | 79 +--------------- gradle/libs.versions.toml | 2 +- 3 files changed, 52 insertions(+), 123 deletions(-) diff --git a/app/dependencies/prodReleaseRuntimeClasspath.txt b/app/dependencies/prodReleaseRuntimeClasspath.txt index 33af141ce..7cd6df2d2 100644 --- a/app/dependencies/prodReleaseRuntimeClasspath.txt +++ b/app/dependencies/prodReleaseRuntimeClasspath.txt @@ -2,8 +2,8 @@ androidx.activity:activity-compose:1.8.0 androidx.activity:activity-ktx:1.8.0 androidx.activity:activity:1.8.0 androidx.annotation:annotation-experimental:1.4.0 -androidx.annotation:annotation-jvm:1.7.1 -androidx.annotation:annotation:1.7.1 +androidx.annotation:annotation-jvm:1.8.0-beta01 +androidx.annotation:annotation:1.8.0-beta01 androidx.appcompat:appcompat-resources:1.6.1 androidx.appcompat:appcompat:1.6.1 androidx.arch.core:core-common:2.2.0 @@ -13,20 +13,20 @@ androidx.browser:browser:1.8.0 androidx.collection:collection-jvm:1.4.0 androidx.collection:collection-ktx:1.4.0 androidx.collection:collection:1.4.0 -androidx.compose.animation:animation-android:1.6.3 -androidx.compose.animation:animation-core-android:1.6.3 -androidx.compose.animation:animation-core:1.6.3 -androidx.compose.animation:animation:1.6.3 +androidx.compose.animation:animation-android:1.7.0-alpha06 +androidx.compose.animation:animation-core-android:1.7.0-alpha06 +androidx.compose.animation:animation-core:1.7.0-alpha06 +androidx.compose.animation:animation:1.7.0-alpha06 androidx.compose.foundation:foundation-android:1.6.3 androidx.compose.foundation:foundation-layout-android:1.6.3 androidx.compose.foundation:foundation-layout:1.6.3 androidx.compose.foundation:foundation:1.6.3 -androidx.compose.material3.adaptive:adaptive-android:1.0.0-alpha08 -androidx.compose.material3.adaptive:adaptive-layout-android:1.0.0-alpha08 -androidx.compose.material3.adaptive:adaptive-layout:1.0.0-alpha08 -androidx.compose.material3.adaptive:adaptive-navigation-android:1.0.0-alpha08 -androidx.compose.material3.adaptive:adaptive-navigation:1.0.0-alpha08 -androidx.compose.material3.adaptive:adaptive:1.0.0-alpha08 +androidx.compose.material3.adaptive:adaptive-android:1.0.0-alpha10 +androidx.compose.material3.adaptive:adaptive-layout-android:1.0.0-alpha10 +androidx.compose.material3.adaptive:adaptive-layout:1.0.0-alpha10 +androidx.compose.material3.adaptive:adaptive-navigation-android:1.0.0-alpha10 +androidx.compose.material3.adaptive:adaptive-navigation:1.0.0-alpha10 +androidx.compose.material3.adaptive:adaptive:1.0.0-alpha10 androidx.compose.material3:material3-android:1.2.1 androidx.compose.material3:material3-window-size-class-android:1.2.1 androidx.compose.material3:material3-window-size-class:1.2.1 @@ -37,25 +37,25 @@ androidx.compose.material:material-icons-extended-android:1.6.3 androidx.compose.material:material-icons-extended:1.6.3 androidx.compose.material:material-ripple-android:1.6.3 androidx.compose.material:material-ripple:1.6.3 -androidx.compose.runtime:runtime-android:1.6.3 -androidx.compose.runtime:runtime-saveable-android:1.6.3 -androidx.compose.runtime:runtime-saveable:1.6.3 +androidx.compose.runtime:runtime-android:1.7.0-alpha06 +androidx.compose.runtime:runtime-saveable-android:1.7.0-alpha06 +androidx.compose.runtime:runtime-saveable:1.7.0-alpha06 androidx.compose.runtime:runtime-tracing:1.0.0-beta01 -androidx.compose.runtime:runtime:1.6.3 -androidx.compose.ui:ui-android:1.6.3 -androidx.compose.ui:ui-geometry-android:1.6.3 -androidx.compose.ui:ui-geometry:1.6.3 -androidx.compose.ui:ui-graphics-android:1.6.3 -androidx.compose.ui:ui-graphics:1.6.3 -androidx.compose.ui:ui-text-android:1.6.3 -androidx.compose.ui:ui-text:1.6.3 -androidx.compose.ui:ui-tooling-preview-android:1.6.3 -androidx.compose.ui:ui-tooling-preview:1.6.3 -androidx.compose.ui:ui-unit-android:1.6.3 -androidx.compose.ui:ui-unit:1.6.3 -androidx.compose.ui:ui-util-android:1.6.3 -androidx.compose.ui:ui-util:1.6.3 -androidx.compose.ui:ui:1.6.3 +androidx.compose.runtime:runtime:1.7.0-alpha06 +androidx.compose.ui:ui-android:1.7.0-alpha06 +androidx.compose.ui:ui-geometry-android:1.7.0-alpha06 +androidx.compose.ui:ui-geometry:1.7.0-alpha06 +androidx.compose.ui:ui-graphics-android:1.7.0-alpha06 +androidx.compose.ui:ui-graphics:1.7.0-alpha06 +androidx.compose.ui:ui-text-android:1.7.0-alpha06 +androidx.compose.ui:ui-text:1.7.0-alpha06 +androidx.compose.ui:ui-tooling-preview-android:1.7.0-alpha06 +androidx.compose.ui:ui-tooling-preview:1.7.0-alpha06 +androidx.compose.ui:ui-unit-android:1.7.0-alpha06 +androidx.compose.ui:ui-unit:1.7.0-alpha06 +androidx.compose.ui:ui-util-android:1.7.0-alpha06 +androidx.compose.ui:ui-util:1.7.0-alpha06 +androidx.compose.ui:ui:1.7.0-alpha06 androidx.compose:compose-bom:2024.02.02 androidx.concurrent:concurrent-futures:1.1.0 androidx.core:core-ktx:1.12.0 @@ -74,26 +74,32 @@ androidx.emoji2:emoji2-views-helper:1.3.0 androidx.emoji2:emoji2:1.3.0 androidx.exifinterface:exifinterface:1.3.7 androidx.fragment:fragment:1.5.1 +androidx.graphics:graphics-path:1.0.0-beta02 androidx.hilt:hilt-common:1.1.0 androidx.hilt:hilt-navigation-compose:1.2.0 androidx.hilt:hilt-navigation:1.2.0 androidx.hilt:hilt-work:1.1.0 androidx.interpolator:interpolator:1.0.0 androidx.legacy:legacy-support-core-utils:1.0.0 -androidx.lifecycle:lifecycle-common-java8:2.7.0 -androidx.lifecycle:lifecycle-common:2.7.0 -androidx.lifecycle:lifecycle-livedata-core-ktx:2.7.0 -androidx.lifecycle:lifecycle-livedata-core:2.7.0 -androidx.lifecycle:lifecycle-livedata:2.7.0 -androidx.lifecycle:lifecycle-process:2.7.0 -androidx.lifecycle:lifecycle-runtime-compose:2.7.0 -androidx.lifecycle:lifecycle-runtime-ktx:2.7.0 -androidx.lifecycle:lifecycle-runtime:2.7.0 -androidx.lifecycle:lifecycle-service:2.7.0 -androidx.lifecycle:lifecycle-viewmodel-compose:2.7.0 -androidx.lifecycle:lifecycle-viewmodel-ktx:2.7.0 -androidx.lifecycle:lifecycle-viewmodel-savedstate:2.7.0 -androidx.lifecycle:lifecycle-viewmodel:2.7.0 +androidx.lifecycle:lifecycle-common-java8:2.8.0-alpha04 +androidx.lifecycle:lifecycle-common-jvm:2.8.0-alpha04 +androidx.lifecycle:lifecycle-common:2.8.0-alpha04 +androidx.lifecycle:lifecycle-livedata-core-ktx:2.8.0-alpha04 +androidx.lifecycle:lifecycle-livedata-core:2.8.0-alpha04 +androidx.lifecycle:lifecycle-livedata:2.8.0-alpha04 +androidx.lifecycle:lifecycle-process:2.8.0-alpha04 +androidx.lifecycle:lifecycle-runtime-android:2.8.0-alpha04 +androidx.lifecycle:lifecycle-runtime-compose:2.8.0-alpha04 +androidx.lifecycle:lifecycle-runtime-ktx-android:2.8.0-alpha04 +androidx.lifecycle:lifecycle-runtime-ktx:2.8.0-alpha04 +androidx.lifecycle:lifecycle-runtime:2.8.0-alpha04 +androidx.lifecycle:lifecycle-service:2.8.0-alpha04 +androidx.lifecycle:lifecycle-viewmodel-android:2.8.0-alpha04 +androidx.lifecycle:lifecycle-viewmodel-compose-android:2.8.0-alpha04 +androidx.lifecycle:lifecycle-viewmodel-compose:2.8.0-alpha04 +androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.0-alpha04 +androidx.lifecycle:lifecycle-viewmodel-savedstate:2.8.0-alpha04 +androidx.lifecycle:lifecycle-viewmodel:2.8.0-alpha04 androidx.loader:loader:1.0.0 androidx.localbroadcastmanager:localbroadcastmanager:1.0.0 androidx.metrics:metrics-performance:1.0.0-alpha04 diff --git a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/interests2pane/InterestsListDetailScreen.kt b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/interests2pane/InterestsListDetailScreen.kt index a6c2edcf7..4cc4345ef 100644 --- a/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/interests2pane/InterestsListDetailScreen.kt +++ b/app/src/main/kotlin/com/google/samples/apps/nowinandroid/ui/interests2pane/InterestsListDetailScreen.kt @@ -17,29 +17,15 @@ package com.google.samples.apps.nowinandroid.ui.interests2pane import androidx.activity.compose.BackHandler -import androidx.compose.foundation.layout.PaddingValues -import androidx.compose.foundation.layout.WindowInsets import androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi -import androidx.compose.material3.adaptive.Posture -import androidx.compose.material3.adaptive.WindowAdaptiveInfo -import androidx.compose.material3.adaptive.allVerticalHingeBounds -import androidx.compose.material3.adaptive.currentWindowAdaptiveInfo -import androidx.compose.material3.adaptive.layout.HingePolicy import androidx.compose.material3.adaptive.layout.ListDetailPaneScaffold import androidx.compose.material3.adaptive.layout.ListDetailPaneScaffoldRole import androidx.compose.material3.adaptive.layout.PaneAdaptedValue -import androidx.compose.material3.adaptive.layout.PaneScaffoldDirective -import androidx.compose.material3.adaptive.layout.calculateStandardPaneScaffoldDirective import androidx.compose.material3.adaptive.navigation.ThreePaneScaffoldNavigator import androidx.compose.material3.adaptive.navigation.rememberListDetailPaneScaffoldNavigator -import androidx.compose.material3.adaptive.occludingVerticalHingeBounds -import androidx.compose.material3.adaptive.separatingVerticalHingeBounds import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue -import androidx.compose.ui.geometry.Rect -import androidx.compose.ui.unit.Dp -import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.navigation.NavGraphBuilder @@ -48,7 +34,6 @@ import androidx.navigation.compose.NavHost import androidx.navigation.compose.composable import androidx.navigation.compose.rememberNavController import androidx.navigation.navArgument -import androidx.window.core.layout.WindowWidthSizeClass import com.google.samples.apps.nowinandroid.feature.interests.InterestsRoute import com.google.samples.apps.nowinandroid.feature.interests.navigation.INTERESTS_ROUTE import com.google.samples.apps.nowinandroid.feature.interests.navigation.TOPIC_ID_ARG @@ -91,12 +76,7 @@ internal fun InterestsListDetailScreen( selectedTopicId: String?, onTopicClick: (String) -> Unit, ) { - val scaffoldDirective = calculateNoContentPaddingScaffoldDirective( - currentWindowAdaptiveInfo(), - ) - val listDetailNavigator = rememberListDetailPaneScaffoldNavigator( - scaffoldDirective = scaffoldDirective, - ) + val listDetailNavigator = rememberListDetailPaneScaffoldNavigator() BackHandler(listDetailNavigator.canNavigateBack()) { listDetailNavigator.navigateBack() } @@ -136,7 +116,6 @@ internal fun InterestsListDetailScreen( } } }, - windowInsets = WindowInsets(0, 0, 0, 0), ) LaunchedEffect(Unit) { if (selectedTopicId != null) { @@ -153,59 +132,3 @@ private fun ThreePaneScaffoldNavigator.isListPaneVisible(): Boolean = @OptIn(ExperimentalMaterial3AdaptiveApi::class) private fun ThreePaneScaffoldNavigator.isDetailPaneVisible(): Boolean = scaffoldValue[ListDetailPaneScaffoldRole.Detail] == PaneAdaptedValue.Expanded - -/** - * This is a direct clone of [calculateStandardPaneScaffoldDirective] with the only change of - * passing 0 content padding to the panes. - */ -@OptIn(ExperimentalMaterial3AdaptiveApi::class) -private fun calculateNoContentPaddingScaffoldDirective( - windowAdaptiveInfo: WindowAdaptiveInfo, - verticalHingePolicy: HingePolicy = HingePolicy.AvoidSeparating, -): PaneScaffoldDirective { - val maxHorizontalPartitions: Int - val verticalSpacerSize: Dp - when (windowAdaptiveInfo.windowSizeClass.windowWidthSizeClass) { - WindowWidthSizeClass.COMPACT -> { - maxHorizontalPartitions = 1 - verticalSpacerSize = 0.dp - } - WindowWidthSizeClass.MEDIUM -> { - maxHorizontalPartitions = 1 - verticalSpacerSize = 0.dp - } - else -> { - maxHorizontalPartitions = 2 - verticalSpacerSize = 24.dp - } - } - val maxVerticalPartitions: Int - val horizontalSpacerSize: Dp - - if (windowAdaptiveInfo.windowPosture.isTabletop) { - maxVerticalPartitions = 2 - horizontalSpacerSize = 24.dp - } else { - maxVerticalPartitions = 1 - horizontalSpacerSize = 0.dp - } - - return PaneScaffoldDirective( - PaddingValues(0.dp), - maxHorizontalPartitions, - verticalSpacerSize, - maxVerticalPartitions, - horizontalSpacerSize, - getExcludedVerticalBounds(windowAdaptiveInfo.windowPosture, verticalHingePolicy), - ) -} - -@OptIn(ExperimentalMaterial3AdaptiveApi::class) -private fun getExcludedVerticalBounds(posture: Posture, hingePolicy: HingePolicy): List { - return when (hingePolicy) { - HingePolicy.AvoidSeparating -> posture.separatingVerticalHingeBounds - HingePolicy.AvoidOccluding -> posture.occludingVerticalHingeBounds - HingePolicy.AlwaysAvoid -> posture.allVerticalHingeBounds - else -> emptyList() - } -} diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index d3ea109ef..0aff27c8c 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -9,7 +9,7 @@ androidxAppCompat = "1.6.1" androidxBrowser = "1.8.0" androidxComposeBom = "2024.02.02" androidxComposeCompiler = "1.5.8" -androidxComposeMaterial3Adaptive = "1.0.0-alpha08" +androidxComposeMaterial3Adaptive = "1.0.0-alpha10" androidxComposeRuntimeTracing = "1.0.0-beta01" androidxCore = "1.12.0" androidxCoreSplashscreen = "1.0.1" From d452f22a685429d2b5748f416ba233060fdb2cf8 Mon Sep 17 00:00:00 2001 From: Alex Vanyo Date: Thu, 11 Apr 2024 13:06:57 -0700 Subject: [PATCH 39/39] Update badging Change-Id: If6b1327554bc855baa86fd47519ca56e015b9d14 --- app/prodRelease-badging.txt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/prodRelease-badging.txt b/app/prodRelease-badging.txt index 9ae76fff2..769e0a6e4 100644 --- a/app/prodRelease-badging.txt +++ b/app/prodRelease-badging.txt @@ -6,9 +6,9 @@ uses-permission: name='android.permission.ACCESS_NETWORK_STATE' uses-permission: name='android.permission.POST_NOTIFICATIONS' uses-permission: name='android.permission.WAKE_LOCK' uses-permission: name='com.google.android.c2dm.permission.RECEIVE' -uses-permission: name='com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE' uses-permission: name='android.permission.RECEIVE_BOOT_COMPLETED' uses-permission: name='android.permission.FOREGROUND_SERVICE' +uses-permission: name='com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE' uses-permission: name='com.google.samples.apps.nowinandroid.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION' application-label:'Now in Android' application-label-af:'Now in Android' @@ -105,9 +105,9 @@ application-icon-640:'res/mipmap-anydpi-v26/ic_launcher.xml' application-icon-65534:'res/mipmap-anydpi-v26/ic_launcher.xml' application: label='Now in Android' icon='res/mipmap-anydpi-v26/ic_launcher.xml' launchable-activity: name='com.google.samples.apps.nowinandroid.MainActivity' label='' icon='' -uses-library-not-required:'android.ext.adservices' uses-library-not-required:'androidx.window.extensions' uses-library-not-required:'androidx.window.sidecar' +uses-library-not-required:'android.ext.adservices' feature-group: label='' uses-feature: name='android.hardware.faketouch' uses-implied-feature: name='android.hardware.faketouch' reason='default feature for all apps' @@ -119,3 +119,4 @@ supports-screens: 'small' 'normal' 'large' 'xlarge' supports-any-density: 'true' locales: '--_--' 'af' 'am' 'ar' 'as' 'az' 'be' 'bg' 'bn' 'bs' 'ca' 'cs' 'da' 'de' 'el' 'en-AU' 'en-CA' 'en-GB' 'en-IN' 'en-XC' 'es' 'es-US' 'et' 'eu' 'fa' 'fi' 'fr' 'fr-CA' 'gl' 'gu' 'hi' 'hr' 'hu' 'hy' 'in' 'is' 'it' 'iw' 'ja' 'ka' 'kk' 'km' 'kn' 'ko' 'ky' 'lo' 'lt' 'lv' 'mk' 'ml' 'mn' 'mr' 'ms' 'my' 'nb' 'ne' 'nl' 'or' 'pa' 'pl' 'pt' 'pt-BR' 'pt-PT' 'ro' 'ru' 'si' 'sk' 'sl' 'sq' 'sr' 'sr-Latn' 'sv' 'sw' 'ta' 'te' 'th' 'tl' 'tr' 'uk' 'ur' 'uz' 'vi' 'zh-CN' 'zh-HK' 'zh-TW' 'zu' densities: '120' '160' '240' '320' '480' '640' '65534' +native-code: 'arm64-v8a' 'armeabi-v7a' 'x86' 'x86_64'