diff --git a/packages/app/README.md b/packages/app/README.md index 24f71468..1d02f883 100644 --- a/packages/app/README.md +++ b/packages/app/README.md @@ -5,7 +5,7 @@ [![Code Coverage][coverage_badge]][coverage_link] [![style: very good analysis][very_good_analysis_badge]][very_good_analysis_link] -An application for teenage makers. +Sharing and Growing! [ci_badge]: https://github.com/PHS-TSA/nexus/actions/workflows/ci.yaml/badge.svg?branch=main [ci_link]: https://github.com/PHS-TSA/nexus/actions/workflows/ci.yaml diff --git a/packages/app/android/app/build.gradle.kts b/packages/app/android/app/build.gradle.kts index 6449a229..7a879cae 100644 --- a/packages/app/android/app/build.gradle.kts +++ b/packages/app/android/app/build.gradle.kts @@ -6,7 +6,7 @@ plugins { } android { - namespace = "org.psdr3.nexus" + namespace = "org.psdr3.harvest_hub" compileSdk = flutter.compileSdkVersion ndkVersion = flutter.ndkVersion @@ -21,7 +21,7 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). - applicationId = "org.psdr3.nexus" + applicationId = "org.psdr3.harvest_hub" // You can update the following values to match your application needs. // For more information, see: https://flutter.dev/to/review-gradle-config. minSdk = flutter.minSdkVersion diff --git a/packages/app/android/app/src/main/AndroidManifest.xml b/packages/app/android/app/src/main/AndroidManifest.xml index 2732822b..4a0ef7df 100644 --- a/packages/app/android/app/src/main/AndroidManifest.xml +++ b/packages/app/android/app/src/main/AndroidManifest.xml @@ -1,6 +1,6 @@ CFBundleDevelopmentRegion $(DEVELOPMENT_LANGUAGE) CFBundleDisplayName - Town Talk + Harvest Hub CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier @@ -13,7 +13,7 @@ CFBundleInfoDictionaryVersion 6.0 CFBundleName - Town Talk + Harvest Hub CFBundlePackageType APPL CFBundleShortVersionString @@ -23,7 +23,7 @@ CFBundleVersion $(FLUTTER_BUILD_NUMBER) LSRequiresIPhoneOS - + UILaunchStoryboardName LaunchScreen UIMainStoryboardFile @@ -42,13 +42,13 @@ UIInterfaceOrientationLandscapeRight CADisableMinimumFrameDurationOnPhone - + UIApplicationSupportsIndirectInputEvents - + UIStatusBarHidden - + UIViewControllerBasedStatusBarAppearance - + NSLocationWhenInUseUsageDescription This app needs access to location when open. NSLocationAlwaysUsageDescription diff --git a/packages/app/lib/src/app/app.dart b/packages/app/lib/src/app/app.dart index c956454d..625be5e5 100644 --- a/packages/app/lib/src/app/app.dart +++ b/packages/app/lib/src/app/app.dart @@ -11,11 +11,11 @@ import '../utils/design.dart'; import '../utils/router.dart'; import 'bootstrap.dart'; -/// {@template nexus.app} +/// {@template harvest_hub.app} /// The widget that configures your application. /// {@endtemplate} class App extends ConsumerStatefulWidget with Bootstrap { - /// {@macro nexus.app} + /// {@macro harvest_hub.app} /// /// Construct a new [App] widget. const App({super.key}); diff --git a/packages/app/lib/src/app/create_post.dart b/packages/app/lib/src/app/create_post.dart index 3b4eb282..cbb866cd 100644 --- a/packages/app/lib/src/app/create_post.dart +++ b/packages/app/lib/src/app/create_post.dart @@ -22,11 +22,11 @@ import '../features/home/domain/uploaded_image_entity.dart'; import '../utils/hooks.dart'; import '../utils/responsive.dart'; -/// {@template nexus.app.create_post} +/// {@template harvest_hub.app.create_post} /// A dialog that allows for a user to create a new post. /// {@endtemplate} class CreatePost extends HookConsumerWidget { - /// {@macro nexus.app.create_post} + /// {@macro harvest_hub.app.create_post} /// /// Construct a new [CreatePost] widget. const CreatePost({super.key}); diff --git a/packages/app/lib/src/app/wrapper.dart b/packages/app/lib/src/app/wrapper.dart index 0be9b686..838488b7 100644 --- a/packages/app/lib/src/app/wrapper.dart +++ b/packages/app/lib/src/app/wrapper.dart @@ -8,11 +8,11 @@ import 'package:flutter/material.dart'; import '../utils/responsive.dart'; import 'create_post.dart'; -/// {@template nexus.app.wrapper} +/// {@template harvest_hub.app.wrapper} /// Wrap the pages in a Material Design scaffold. /// {@endtemplate} class Wrapper extends StatelessWidget { - /// {@macro nexus.app.wrapper} + /// {@macro harvest_hub.app.wrapper} /// /// Construct a new [Wrapper] widget. const Wrapper({required this.child, super.key}); diff --git a/packages/app/lib/src/app/wrapper_page.dart b/packages/app/lib/src/app/wrapper_page.dart index 898d8aed..97b2d080 100644 --- a/packages/app/lib/src/app/wrapper_page.dart +++ b/packages/app/lib/src/app/wrapper_page.dart @@ -8,12 +8,12 @@ import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'router.gr.dart'; import 'wrapper.dart'; -/// {@template nexus.app.wrapper_page} +/// {@template harvest_hub.app.wrapper_page} /// Wrap the pages in a Material Design scaffold. /// {@endtemplate} @RoutePage(deferredLoading: true) class WrapperPage extends ConsumerWidget { - /// {@macro nexus.app.wrapper_page} + /// {@macro harvest_hub.app.wrapper_page} /// /// Construct a new [WrapperPage] widget. const WrapperPage({super.key}); diff --git a/packages/app/lib/src/env/env.dart b/packages/app/lib/src/env/env.dart index 63fb9ab3..719be741 100644 --- a/packages/app/lib/src/env/env.dart +++ b/packages/app/lib/src/env/env.dart @@ -22,11 +22,11 @@ abstract class Env { @EnviedField(defaultValue: false) static final bool selfSigned = _Env.selfSigned; - /// Nexus database ID + /// Database ID @EnviedField(defaultValue: 'database-id') static final String databaseId = _Env.databaseId; - /// Nexus posts collection ID + /// Post collection ID @EnviedField(defaultValue: 'post-coolection-id') static final String postsCollectionId = _Env.postsCollectionId; } diff --git a/packages/app/lib/src/features/auth/data/auth_repository.dart b/packages/app/lib/src/features/auth/data/auth_repository.dart index b025ad88..e9b22250 100644 --- a/packages/app/lib/src/features/auth/data/auth_repository.dart +++ b/packages/app/lib/src/features/auth/data/auth_repository.dart @@ -55,7 +55,9 @@ final class _AppwriteAuthRepository implements AuthRepository { await logInUser(email, password); return user; - } on AppwriteException { + } on AppwriteException catch (e) { + log('Failed to create account', error: e); + return null; } } diff --git a/packages/app/lib/src/features/auth/presentation/auth/log_in_page.dart b/packages/app/lib/src/features/auth/presentation/auth/log_in_page.dart index 144be832..23687109 100644 --- a/packages/app/lib/src/features/auth/presentation/auth/log_in_page.dart +++ b/packages/app/lib/src/features/auth/presentation/auth/log_in_page.dart @@ -14,12 +14,12 @@ import '../../../../utils/toast.dart'; import '../../application/auth_service.dart'; import '../../domain/auth_callback.dart'; -/// {@template nexus.features.auth.presentation.auth.login_page} +/// {@template harvest_hub.features.auth.presentation.auth.login_page} /// A page that displays an interface for signing in users. /// {@endtemplate} @RoutePage(deferredLoading: true) class LogInPage extends HookConsumerWidget { - /// {@macro nexus.features.auth.presentation.auth.login_page} + /// {@macro harvest_hub.features.auth.presentation.auth.login_page} /// /// Construct a new [LogInPage] widget. const LogInPage({super.key, AuthCallback? onResult}) : _onResult = onResult; @@ -89,8 +89,7 @@ class _DesktopLogInPage extends HookConsumerWidget { decoration: BoxDecoration( image: DecorationImage( image: Assets.pictures.loginImage.provider(), - // TODO(MattsAttack): I need to find a better image or move the photo down. - fit: BoxFit.fill, + fit: BoxFit.cover, ), ), child: Column( @@ -106,7 +105,7 @@ class _DesktopLogInPage extends HookConsumerWidget { child: Column( children: [ Text( - 'Welcome to Town Talk!', + 'Welcome to Harvest Hub!', style: TextStyle( fontSize: 28, color: Theme.of(context).colorScheme.onPrimaryContainer, @@ -248,7 +247,7 @@ class _MobileLogInPage extends HookConsumerWidget { child: Column( children: [ Text( - 'Welcome to Town Talk!', + 'Welcome to Harvest Hub!', style: TextStyle( fontSize: 24, color: diff --git a/packages/app/lib/src/features/auth/presentation/auth/sign_up_page.dart b/packages/app/lib/src/features/auth/presentation/auth/sign_up_page.dart index 5f52a6fe..5b64ef4d 100644 --- a/packages/app/lib/src/features/auth/presentation/auth/sign_up_page.dart +++ b/packages/app/lib/src/features/auth/presentation/auth/sign_up_page.dart @@ -16,12 +16,12 @@ import '../../domain/auth_callback.dart'; // TODO(lishaduck): Extract most of this out to a widget that can be shared with the log in page. -/// {@template nexus.features.auth.presentation.auth.sign_up_page} +/// {@template harvest_hub.features.auth.presentation.auth.sign_up_page} /// A page that displays an interface for signing up new users. /// {@endtemplate} @RoutePage(deferredLoading: true) class SignUpPage extends HookConsumerWidget { - /// {@macro nexus.features.auth.presentation.auth.sign_up_page} + /// {@macro harvest_hub.features.auth.presentation.auth.sign_up_page} /// /// Construct a new [SignUpPage] widget. const SignUpPage({super.key, AuthCallback? onResult}) : _onResult = onResult; @@ -90,8 +90,7 @@ class _DesktopSignUpPage extends HookConsumerWidget { decoration: BoxDecoration( image: DecorationImage( image: Assets.pictures.loginImage.provider(), - // TODO(MattsAttack): I need to find a better image or move the photo down. - fit: BoxFit.fill, + fit: BoxFit.cover, ), ), child: Container( @@ -105,7 +104,7 @@ class _DesktopSignUpPage extends HookConsumerWidget { child: Column( children: [ Text( - 'Welcome to Town Talk!', + 'Welcome to Harvest Hub!', style: TextStyle( fontSize: 28, color: Theme.of(context).colorScheme.onPrimaryContainer, @@ -199,6 +198,7 @@ class _MobileSignUpPage extends HookConsumerWidget { Widget build(BuildContext context, WidgetRef ref) { final formKey = useGlobalKey(); + final name = useState(''); final email = useState(''); final password = useState(''); @@ -206,10 +206,9 @@ class _MobileSignUpPage extends HookConsumerWidget { if (formKey.currentState?.validate() ?? false) { formKey.currentState?.save(); - // Log in the user. await ref .read(authServiceProvider.notifier) - .logInUser(email.value, password.value); + .createUser(name.value, email.value, password.value); // Check that the widget still exists after the async operation. if (!context.mounted) return; @@ -220,7 +219,7 @@ class _MobileSignUpPage extends HookConsumerWidget { // Runs the function passed in by the guard and brings user back to previous page. _onResult(didLogIn: true); } else { - // Replace the route so user won't come back to login. + // Replace the route so user won't come back to sign up. await context.router.replace(const LocalFeedRoute()); } } else { @@ -260,7 +259,7 @@ class _MobileSignUpPage extends HookConsumerWidget { child: Column( children: [ Text( - 'Welcome to Town Talk!', + 'Welcome to Harvest Hub!', style: TextStyle( fontSize: 24, color: @@ -271,6 +270,20 @@ class _MobileSignUpPage extends HookConsumerWidget { textAlign: TextAlign.center, ), const SizedBox(height: 24), + TextFormField( + initialValue: name.value, + onSaved: (value) { + if (value == null) return; + + name.value = value; + }, + keyboardType: TextInputType.name, + decoration: const InputDecoration( + border: OutlineInputBorder(), + labelText: 'First and Last Name', + ), + ), + const SizedBox(height: 16), TextFormField( initialValue: email.value, onSaved: (value) { @@ -304,7 +317,7 @@ class _MobileSignUpPage extends HookConsumerWidget { width: double.infinity, child: ElevatedButton( onPressed: handleSubmit, - child: const Text('Log in'), + child: const Text('Sign up'), ), ), Padding( @@ -312,12 +325,10 @@ class _MobileSignUpPage extends HookConsumerWidget { child: TextButton( onPressed: () async { await context.router.push( - SignUpRoute(onResult: _onResult), + LogInRoute(onResult: _onResult), ); }, - child: const Text( - "Don't have an account? Sign up!", - ), + child: const Text('Back to login'), ), ), ], diff --git a/packages/app/lib/src/features/home/domain/feed_model.dart b/packages/app/lib/src/features/home/domain/feed_model.dart index 0ffba771..92b6c4f8 100644 --- a/packages/app/lib/src/features/home/domain/feed_model.dart +++ b/packages/app/lib/src/features/home/domain/feed_model.dart @@ -9,13 +9,13 @@ import 'post_id.dart'; part 'feed_model.freezed.dart'; -/// {@template nexus.features.home.domain.feed} +/// {@template harvest_hub.features.home.domain.feed} /// Represent a feed of posts. /// {@endtemplate} @immutable @freezed sealed class FeedModel with _$FeedModel { - /// {@macro nexus.features.home.domain.feed} + /// {@macro harvest_hub.features.home.domain.feed} /// /// Create a new, immutable instance of [FeedModel]. const factory FeedModel({ diff --git a/packages/app/lib/src/features/home/domain/post_entity.dart b/packages/app/lib/src/features/home/domain/post_entity.dart index 83d9ee15..4792bcd0 100644 --- a/packages/app/lib/src/features/home/domain/post_entity.dart +++ b/packages/app/lib/src/features/home/domain/post_entity.dart @@ -12,13 +12,13 @@ import 'post_id.dart'; part 'post_entity.freezed.dart'; part 'post_entity.g.dart'; -/// {@template nexus.features.home.domain.post} +/// {@template harvest_hub.features.home.domain.post} /// Represent a post, which is a single item in a feed. /// {@endtemplate} @immutable @freezed sealed class PostEntity with _$PostEntity { - /// {@macro nexus.features.home.domain.post} + /// {@macro harvest_hub.features.home.domain.post} /// /// Create a new, immutable instance of [PostEntity]. const factory PostEntity({ diff --git a/packages/app/lib/src/features/home/domain/post_model_entity.dart b/packages/app/lib/src/features/home/domain/post_model_entity.dart index 4c702c4c..8511efb3 100644 --- a/packages/app/lib/src/features/home/domain/post_model_entity.dart +++ b/packages/app/lib/src/features/home/domain/post_model_entity.dart @@ -10,7 +10,7 @@ import 'post_id.dart'; part 'post_model_entity.freezed.dart'; -/// {@template nexus.features.home.domain.post_model_entity} +/// {@template harvest_hub.features.home.domain.post_model_entity} /// Represent a post, which is a single item in a feed. /// /// As opposed to [PostEntity], this is contains the resolved values of a post. @@ -18,7 +18,7 @@ part 'post_model_entity.freezed.dart'; @immutable @freezed sealed class PostModelEntity with _$PostModelEntity { - /// {@macro nexus.features.home.domain.post_model_entity} + /// {@macro harvest_hub.features.home.domain.post_model_entity} /// /// Create a new, immutable instance of [PostModelEntity]. const factory PostModelEntity({ diff --git a/packages/app/lib/src/features/home/domain/uploaded_image_entity.dart b/packages/app/lib/src/features/home/domain/uploaded_image_entity.dart index 91a010c5..ab906d09 100644 --- a/packages/app/lib/src/features/home/domain/uploaded_image_entity.dart +++ b/packages/app/lib/src/features/home/domain/uploaded_image_entity.dart @@ -3,13 +3,13 @@ import 'package:image_picker/image_picker.dart'; part 'uploaded_image_entity.freezed.dart'; -/// {@template nexus.features.home.domain.uploaded_image} +/// {@template harvest_hub.features.home.domain.uploaded_image} /// Class for uploaded images. Contains imageIds and file data. /// {@endtemplate} @immutable @freezed sealed class UploadedImageEntity with _$UploadedImageEntity { - /// {@macro nexus.features.home.domain.uploaded_image} + /// {@macro harvest_hub.features.home.domain.uploaded_image} const factory UploadedImageEntity({ required String imageId, required XFile file, diff --git a/packages/app/lib/src/features/home/presentation/home/feed.dart b/packages/app/lib/src/features/home/presentation/home/feed.dart index 635bb12c..2b27aa03 100644 --- a/packages/app/lib/src/features/home/presentation/home/feed.dart +++ b/packages/app/lib/src/features/home/presentation/home/feed.dart @@ -14,11 +14,11 @@ import '../../domain/feed_entity.dart'; import '../../domain/post_model_entity.dart'; import 'post.dart'; -/// {@template nexus.features.home.presentation.home.feed} +/// {@template harvest_hub.features.home.presentation.home.feed} /// An infinite loading list of posts. /// {@endtemplate} class Feed extends ConsumerWidget { - /// {@macro nexus.features.home.presentation.home.feed} + /// {@macro harvest_hub.features.home.presentation.home.feed} /// /// Construct a new [Feed] widget. const Feed({required this.feed, super.key}); diff --git a/packages/app/lib/src/features/home/presentation/home/feed_routing_page.dart b/packages/app/lib/src/features/home/presentation/home/feed_routing_page.dart index 5b692aa5..64f833d6 100644 --- a/packages/app/lib/src/features/home/presentation/home/feed_routing_page.dart +++ b/packages/app/lib/src/features/home/presentation/home/feed_routing_page.dart @@ -7,12 +7,12 @@ import 'package:hooks_riverpod/hooks_riverpod.dart'; import '../../../../app/router.gr.dart'; -/// {@template nexus.features.home.presentation.home.feed_routing_page} +/// {@template harvest_hub.features.home.presentation.home.feed_routing_page} /// A page that manages routing between different feeds. /// {@endtemplate} @RoutePage(deferredLoading: true) class FeedRoutingPage extends ConsumerWidget { - /// {@macro nexus.features.home.presentation.home.feed_routing_page} + /// {@macro harvest_hub.features.home.presentation.home.feed_routing_page} /// /// Construct a new [FeedRoutingPage] widget. const FeedRoutingPage({super.key}); diff --git a/packages/app/lib/src/features/home/presentation/home/local_feed_page.dart b/packages/app/lib/src/features/home/presentation/home/local_feed_page.dart index 018dd281..a141b368 100644 --- a/packages/app/lib/src/features/home/presentation/home/local_feed_page.dart +++ b/packages/app/lib/src/features/home/presentation/home/local_feed_page.dart @@ -9,12 +9,12 @@ import '../../application/location_service.dart'; import '../../domain/feed_entity.dart'; import 'feed.dart'; -/// {@template nexus.features.home.presentation.home.local_feed_page} +/// {@template harvest_hub.features.home.presentation.home.local_feed_page} /// A page that displays a feed of posts from the area nearby the user. /// {@endtemplate} @RoutePage(deferredLoading: true) class LocalFeedPage extends ConsumerWidget { - /// {@macro nexus.features.home.presentation.home.local_feed_page} + /// {@macro harvest_hub.features.home.presentation.home.local_feed_page} /// /// Construct a new [LocalFeedPage] widget. const LocalFeedPage({super.key}); diff --git a/packages/app/lib/src/features/home/presentation/home/post.dart b/packages/app/lib/src/features/home/presentation/home/post.dart index 0541d083..5223f99b 100644 --- a/packages/app/lib/src/features/home/presentation/home/post.dart +++ b/packages/app/lib/src/features/home/presentation/home/post.dart @@ -10,11 +10,11 @@ import '../../../auth/application/auth_service.dart'; import '../../application/feed_service.dart'; import '../../application/post_service.dart'; -/// {@template nexus.features.home.presentation.home.post} +/// {@template harvest_hub.features.home.presentation.home.post} /// View a post. /// {@endtemplate} class Post extends StatelessWidget { - /// {@macro nexus.features.home.presentation.home.post} + /// {@macro harvest_hub.features.home.presentation.home.post} /// /// Construct a new [Post] widget for a []. const Post({super.key}); diff --git a/packages/app/lib/src/features/home/presentation/home/post_view_page.dart b/packages/app/lib/src/features/home/presentation/home/post_view_page.dart index 1b6466f2..fc3ef4f1 100644 --- a/packages/app/lib/src/features/home/presentation/home/post_view_page.dart +++ b/packages/app/lib/src/features/home/presentation/home/post_view_page.dart @@ -16,12 +16,12 @@ import 'comment.dart'; import 'create_comment.dart'; import 'post.dart'; -/// {@template nexus.features.home.presentation.home.post_view_page} +/// {@template harvest_hub.features.home.presentation.home.post_view_page} /// A page that contains full post information. /// {@endtemplate} @RoutePage(deferredLoading: true) class PostViewPage extends StatelessWidget { - /// {@macro nexus.features.home.presentation.home.post_view_page} + /// {@macro harvest_hub.features.home.presentation.home.post_view_page} /// /// Construct a new [PostViewPage] widget. const PostViewPage({@PathParam('id') required this.id, super.key}); diff --git a/packages/app/lib/src/features/home/presentation/home/world_feed_page.dart b/packages/app/lib/src/features/home/presentation/home/world_feed_page.dart index bcc1cb65..c2993bba 100644 --- a/packages/app/lib/src/features/home/presentation/home/world_feed_page.dart +++ b/packages/app/lib/src/features/home/presentation/home/world_feed_page.dart @@ -7,12 +7,12 @@ import 'package:flutter/material.dart'; import '../../domain/feed_entity.dart'; import 'feed.dart'; -/// {@template nexus.features.home.presentation.home.world_feed_page} +/// {@template harvest_hub.features.home.presentation.home.world_feed_page} /// A page that displays a feed of posts from around the world. /// {@endtemplate} @RoutePage(deferredLoading: true) class WorldFeedPage extends StatelessWidget { - /// {@macro nexus.features.home.presentation.home.world_feed_page} + /// {@macro harvest_hub.features.home.presentation.home.world_feed_page} /// /// Construct a new [WorldFeedPage] widget. const WorldFeedPage({super.key}); diff --git a/packages/app/lib/src/features/map/presentation/items/map_info_page.dart b/packages/app/lib/src/features/map/presentation/items/map_info_page.dart index 204314bb..e5616e0e 100644 --- a/packages/app/lib/src/features/map/presentation/items/map_info_page.dart +++ b/packages/app/lib/src/features/map/presentation/items/map_info_page.dart @@ -8,12 +8,12 @@ import 'package:flutter/material.dart'; import '../../../home/domain/feed_entity.dart'; import '../../../home/presentation/home/feed.dart'; -/// {@template nexus.features.map.presentation.items.map_info_page} +/// {@template harvest_hub.features.map.presentation.items.map_info_page} /// Displays a feed of posts from the area nearby the user. /// {@endtemplate} @RoutePage(deferredLoading: true) class MapInfoPage extends StatelessWidget { - /// {@macro nexus.features.map.presentation.items.map_info_page} + /// {@macro harvest_hub.features.map.presentation.items.map_info_page} /// /// Construct a new [MapInfoPage] widget. const MapInfoPage({ diff --git a/packages/app/lib/src/features/map/presentation/items/map_page.dart b/packages/app/lib/src/features/map/presentation/items/map_page.dart index 03b4d6b4..42f23539 100644 --- a/packages/app/lib/src/features/map/presentation/items/map_page.dart +++ b/packages/app/lib/src/features/map/presentation/items/map_page.dart @@ -13,12 +13,12 @@ import '../../../../utils/tile_layers.dart'; import '../../../home/domain/feed_entity.dart'; import '../../../home/presentation/home/feed.dart'; -/// {@template nexus.features.map.presentation.items.map_page} +/// {@template harvest_hub.features.map.presentation.items.map_page} /// Displays a map that allows users to view and interact with locations. /// {@endtemplate} @RoutePage(deferredLoading: true) class MapPage extends HookWidget { - /// {@macro nexus.features.map.presentation.items.map_page} + /// {@macro harvest_hub.features.map.presentation.items.map_page} /// /// Construct a new [MapPage] widget. const MapPage({super.key}); diff --git a/packages/app/lib/src/features/settings/domain/settings_model.dart b/packages/app/lib/src/features/settings/domain/settings_model.dart index 5c83c04a..629b4657 100644 --- a/packages/app/lib/src/features/settings/domain/settings_model.dart +++ b/packages/app/lib/src/features/settings/domain/settings_model.dart @@ -8,13 +8,13 @@ import 'package:freezed_annotation/freezed_annotation.dart'; part 'settings_model.freezed.dart'; part 'settings_model.g.dart'; -/// {@template nexus.features.settings.domain.settings_model} +/// {@template harvest_hub.features.settings.domain.settings_model} /// Represent the user's settings. /// {@endtemplate} @freezed @immutable sealed class SettingsModel with _$SettingsModel { - /// {@macro nexus.features.settings.domain.settings_model} + /// {@macro harvest_hub.features.settings.domain.settings_model} /// /// Create a new, immutable instance of [SettingsModel]. const factory SettingsModel({required ThemeMode themeMode}) = _SettingsModel; diff --git a/packages/app/lib/src/features/settings/presentation/preferences/settings_page.dart b/packages/app/lib/src/features/settings/presentation/preferences/settings_page.dart index 1918f093..6370fee0 100644 --- a/packages/app/lib/src/features/settings/presentation/preferences/settings_page.dart +++ b/packages/app/lib/src/features/settings/presentation/preferences/settings_page.dart @@ -15,7 +15,7 @@ import '../../../../utils/hooks.dart'; import '../../../auth/application/auth_service.dart'; import '../../application/settings_service.dart'; -/// {@template nexus.features.settings.presentation.preferences} +/// {@template harvest_hub.features.settings.presentation.preferences} /// Display the various settings that can be customized by the user. /// /// When a user changes a setting, this updates the [SettingsService] and @@ -23,7 +23,7 @@ import '../../application/settings_service.dart'; /// {@endtemplate} @RoutePage(deferredLoading: true) class SettingsPage extends ConsumerWidget { - /// {@macro nexus.features.settings.presentation.preferences} + /// {@macro harvest_hub.features.settings.presentation.preferences} /// /// Construct a new [SettingsPage] widget. const SettingsPage({super.key}); @@ -108,7 +108,7 @@ class SettingsPage extends ConsumerWidget { showAboutDialog( context: context, applicationIcon: Assets.icons.logo.image(width: 50), - applicationName: 'Town Talk', + applicationName: 'Harvest Hub', applicationVersion: packageVersion, applicationLegalese: '© 2024 Eli D. and Matthew W.', children: [ @@ -152,7 +152,7 @@ class _AppDescription extends HookWidget { children: [ const TextSpan( text: - 'Town Talk is a new kind of public forum. ' + 'Harvest Hub is a new kind of public forum. ' 'View the source at ', ), TextSpan( diff --git a/packages/app/lib/src/l10n/arb/app_en.arb b/packages/app/lib/src/l10n/arb/app_en.arb index 20ccad4c..e616cf33 100644 --- a/packages/app/lib/src/l10n/arb/app_en.arb +++ b/packages/app/lib/src/l10n/arb/app_en.arb @@ -1,6 +1,6 @@ { "@@locale": "en", - "appTitle": "Town Talk", + "appTitle": "Harvest Hub", "@appTitle": { "description": "The title of the application" } diff --git a/packages/app/lib/src/utils/design.dart b/packages/app/lib/src/utils/design.dart index ce9313b5..70014291 100644 --- a/packages/app/lib/src/utils/design.dart +++ b/packages/app/lib/src/utils/design.dart @@ -4,11 +4,11 @@ library; import 'package:flutter/material.dart'; /// The app's color scheme. -final scheme = ColorScheme.fromSeed(seedColor: Colors.blue.shade300); +final scheme = ColorScheme.fromSeed(seedColor: Colors.yellow.shade600); /// The app's dark color scheme. final darkScheme = ColorScheme.fromSeed( - seedColor: Colors.blue.shade700, + seedColor: Colors.yellow.shade700, brightness: Brightness.dark, ); diff --git a/packages/app/lib/src/utils/json.dart b/packages/app/lib/src/utils/json.dart index ef626342..183bdda0 100644 --- a/packages/app/lib/src/utils/json.dart +++ b/packages/app/lib/src/utils/json.dart @@ -1,10 +1,10 @@ import 'package:json_annotation/json_annotation.dart'; -/// {@template nexus.utils.json.DateTime} +/// {@template harvest_hub.utils.json.DateTime} /// Convert a [DateTime] to a JSON [String] in ISO8601 format with no offset (i.e., UTC). /// {@endtemplate} class DataTimeJsonConverter extends JsonConverter { - /// {@macro nexus.utils.json.DateTime} + /// {@macro harvest_hub.utils.json.DateTime} const DataTimeJsonConverter(); @override diff --git a/packages/app/lib/src/utils/tile_layers.dart b/packages/app/lib/src/utils/tile_layers.dart index f0425e98..07e5ee2b 100644 --- a/packages/app/lib/src/utils/tile_layers.dart +++ b/packages/app/lib/src/utils/tile_layers.dart @@ -9,7 +9,7 @@ import 'package:flutter_map_cancellable_tile_provider/flutter_map_cancellable_ti TileLayer openStreetMapLayer([Dio? dio]) { return TileLayer( urlTemplate: 'https://tile.openstreetmap.org/{z}/{x}/{y}.png', - userAgentPackageName: 'org.psdr3.nexus', + userAgentPackageName: 'org.psdr3.harvest_hub', // Use the recommended flutter_map_cancellable_tile_provider package to // support the cancellation of loading tiles. tileProvider: CancellableNetworkTileProvider(dioClient: dio), diff --git a/packages/app/linux/CMakeLists.txt b/packages/app/linux/CMakeLists.txt index ecbec444..ccda410c 100644 --- a/packages/app/linux/CMakeLists.txt +++ b/packages/app/linux/CMakeLists.txt @@ -4,10 +4,10 @@ project(runner LANGUAGES CXX) # The name of the executable created for the application. Change this to change # the on-disk name of your application. -set(BINARY_NAME "town_talk") +set(BINARY_NAME "harvest_hub") # The unique GTK application identifier for this application. See: # https://wiki.gnome.org/HowDoI/ChooseApplicationID -set(APPLICATION_ID "org.psdr3.nexus") +set(APPLICATION_ID "org.psdr3.harvest_hub") # Explicitly opt in to modern CMake behaviors to avoid warnings with recent # versions of CMake. diff --git a/packages/app/linux/my_application.cc b/packages/app/linux/my_application.cc index 7bc7199d..0f6f530f 100644 --- a/packages/app/linux/my_application.cc +++ b/packages/app/linux/my_application.cc @@ -40,11 +40,11 @@ static void my_application_activate(GApplication* application) { if (use_header_bar) { GtkHeaderBar* header_bar = GTK_HEADER_BAR(gtk_header_bar_new()); gtk_widget_show(GTK_WIDGET(header_bar)); - gtk_header_bar_set_title(header_bar, "Town Talk"); + gtk_header_bar_set_title(header_bar, "Harvest Hub"); gtk_header_bar_set_show_close_button(header_bar, TRUE); gtk_window_set_titlebar(window, GTK_WIDGET(header_bar)); } else { - gtk_window_set_title(window, "Town Talk"); + gtk_window_set_title(window, "Harvest Hub"); } gtk_window_set_default_size(window, 1280, 720); diff --git a/packages/app/macos/Runner.xcodeproj/project.pbxproj b/packages/app/macos/Runner.xcodeproj/project.pbxproj index a75d35a8..f253ee8e 100644 --- a/packages/app/macos/Runner.xcodeproj/project.pbxproj +++ b/packages/app/macos/Runner.xcodeproj/project.pbxproj @@ -69,7 +69,7 @@ 331C80D7294CF71000263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = ""; }; 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = ""; }; - 33CC10ED2044A3C60003C045 /* Town Talk.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Town Talk.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 33CC10ED2044A3C60003C045 /* Harvest Hub.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Harvest Hub.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = ""; }; 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; @@ -146,7 +146,7 @@ 33CC10EE2044A3C60003C045 /* Products */ = { isa = PBXGroup; children = ( - 33CC10ED2044A3C60003C045 /* Town Talk.app */, + 33CC10ED2044A3C60003C045 /* Harvest Hub.app */, 331C80D5294CF71000263BE5 /* RunnerTests.xctest */, ); name = Products; @@ -253,7 +253,7 @@ ); name = Runner; productName = Runner; - productReference = 33CC10ED2044A3C60003C045 /* Town Talk.app */; + productReference = 33CC10ED2044A3C60003C045 /* Harvest Hub.app */; productType = "com.apple.product-type.application"; }; /* End PBXNativeTarget section */ @@ -487,10 +487,10 @@ GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 11.0; MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = org.psdr3.nexus.RunnerTests; + PRODUCT_BUNDLE_IDENTIFIER = org.psdr3.harvest_hub.RunnerTests; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/nexus.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/nexus"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/harvest_hub.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/harvest_hub"; }; name = Debug; }; @@ -503,10 +503,10 @@ GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 11.0; MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = org.psdr3.nexus.RunnerTests; + PRODUCT_BUNDLE_IDENTIFIER = org.psdr3.harvest_hub.RunnerTests; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/nexus.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/nexus"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/harvest_hub.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/harvest_hub"; }; name = Release; }; @@ -519,10 +519,10 @@ GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 11.0; MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = org.psdr3.nexus.RunnerTests; + PRODUCT_BUNDLE_IDENTIFIER = org.psdr3.harvest_hub.RunnerTests; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/nexus.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/nexus"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/harvest_hub.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/harvest_hub"; }; name = Profile; }; diff --git a/packages/app/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/packages/app/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index 69aa9231..106db0a1 100644 --- a/packages/app/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/packages/app/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,23 +1,23 @@ + LastUpgradeVersion="1510" + version="1.3"> + parallelizeBuildables="YES" + buildImplicitDependencies="YES"> + ActionType="Xcode.IDEStandardExecutionActionsCore.ExecutionActionType.ShellScriptAction"> + title="Run Prepare Flutter Framework Script" + scriptText=""$FLUTTER_ROOT"/packages/flutter_tools/bin/macos_assemble.sh prepare "> + BuildableIdentifier="primary" + BlueprintIdentifier="33CC10EC2044A3C60003C045" + BuildableName="Harvest Hub.app" + BlueprintName="Runner" + ReferencedContainer="container:Runner.xcodeproj"> @@ -25,93 +25,93 @@ + buildForTesting="YES" + buildForRunning="YES" + buildForProfiling="YES" + buildForArchiving="YES" + buildForAnalyzing="YES"> + BuildableIdentifier="primary" + BlueprintIdentifier="33CC10EC2044A3C60003C045" + BuildableName="Harvest Hub.app" + BlueprintName="Runner" + ReferencedContainer="container:Runner.xcodeproj"> + buildConfiguration="Debug" + selectedDebuggerIdentifier="Xcode.DebuggerFoundation.Debugger.LLDB" + selectedLauncherIdentifier="Xcode.DebuggerFoundation.Launcher.LLDB" + shouldUseLaunchSchemeArgsEnv="YES"> + BuildableIdentifier="primary" + BlueprintIdentifier="33CC10EC2044A3C60003C045" + BuildableName="Harvest Hub.app" + BlueprintName="Runner" + ReferencedContainer="container:Runner.xcodeproj"> + skipped="NO" + parallelizable="YES"> + BuildableIdentifier="primary" + BlueprintIdentifier="331C80D4294CF70F00263BE5" + BuildableName="RunnerTests.xctest" + BlueprintName="RunnerTests" + ReferencedContainer="container:Runner.xcodeproj"> + buildConfiguration="Debug" + selectedDebuggerIdentifier="Xcode.DebuggerFoundation.Debugger.LLDB" + selectedLauncherIdentifier="Xcode.DebuggerFoundation.Launcher.LLDB" + launchStyle="0" + useCustomWorkingDirectory="NO" + ignoresPersistentStateOnLaunch="NO" + debugDocumentVersioning="YES" + debugServiceExtension="internal" + enableGPUValidationMode="1" + allowLocationSimulation="YES"> + runnableDebuggingMode="0"> + BuildableIdentifier="primary" + BlueprintIdentifier="33CC10EC2044A3C60003C045" + BuildableName="Harvest Hub.app" + BlueprintName="Runner" + ReferencedContainer="container:Runner.xcodeproj"> + buildConfiguration="Profile" + shouldUseLaunchSchemeArgsEnv="YES" + savedToolIdentifier="" + useCustomWorkingDirectory="NO" + debugDocumentVersioning="YES"> + runnableDebuggingMode="0"> + BuildableIdentifier="primary" + BlueprintIdentifier="33CC10EC2044A3C60003C045" + BuildableName="Harvest Hub.app" + BlueprintName="Runner" + ReferencedContainer="container:Runner.xcodeproj"> + buildConfiguration="Debug"> + buildConfiguration="Release" + revealArchiveInOrganizer="YES"> diff --git a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png index 45d4d1f1..43673f2b 100644 Binary files a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png and b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png differ diff --git a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png index d458d56a..f0167d63 100644 Binary files a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png and b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png differ diff --git a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png index c3991219..5fceaee3 100644 Binary files a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png and b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png differ diff --git a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png index 233c3b33..ad7f862f 100644 Binary files a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png and b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png differ diff --git a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png index 6b733237..e52cf4e8 100644 Binary files a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png and b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png differ diff --git a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png index 53f265bb..74e57a94 100644 Binary files a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png and b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png differ diff --git a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png index 4848a566..47e524b0 100644 Binary files a/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png and b/packages/app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png differ diff --git a/packages/app/macos/Runner/Configs/AppInfo.xcconfig b/packages/app/macos/Runner/Configs/AppInfo.xcconfig index 7849f07b..15491f02 100644 --- a/packages/app/macos/Runner/Configs/AppInfo.xcconfig +++ b/packages/app/macos/Runner/Configs/AppInfo.xcconfig @@ -5,10 +5,10 @@ // 'flutter create' template. // The application's name. By default this is also the title of the Flutter window. -PRODUCT_NAME = Town Talk +PRODUCT_NAME = Harvest Hub // The application's bundle identifier -PRODUCT_BUNDLE_IDENTIFIER = org.psdr3.nexus +PRODUCT_BUNDLE_IDENTIFIER = org.psdr3.harvest_hub // The copyright displayed in application information PRODUCT_COPYRIGHT = Copyright © 2024 PHS-TSA. All rights reserved. diff --git a/packages/app/pubspec.yaml b/packages/app/pubspec.yaml index 3e39542a..c4cb4a7e 100644 --- a/packages/app/pubspec.yaml +++ b/packages/app/pubspec.yaml @@ -1,5 +1,5 @@ -name: "nexus" -description: "An application for teenage makers." +name: "harvest_hub" +description: "Sharing and growing!" # Prevent accidental publishing to pub.dev. publish_to: "none" @@ -134,7 +134,7 @@ flutter_launcher_icons: web: generate: true - image_path: "assets/icons/logo.png" + image_path: "assets/icons/splash.png" background_color: "#2e2e2e" theme_color: "#0281d4" @@ -171,7 +171,7 @@ flutter_native_splash: # The image parameter allows you to specify an image used in the splash screen. It must be a # png file and should be sized for 4x pixel density. - image: assets/icons/logo.png + image: assets/icons/splash.png # The branding property allows you to specify an image used as branding in the splash screen. # It must be a png file. It is supported for Android, iOS and the Web. For Android 12, diff --git a/packages/app/test/helpers/mocks.dart b/packages/app/test/helpers/mocks.dart index 83e93824..3a46d78d 100644 --- a/packages/app/test/helpers/mocks.dart +++ b/packages/app/test/helpers/mocks.dart @@ -1,6 +1,6 @@ import 'package:appwrite/models.dart'; +import 'package:harvest_hub/src/features/auth/data/auth_repository.dart'; import 'package:mocktail/mocktail.dart'; -import 'package:nexus/src/features/auth/data/auth_repository.dart'; import 'package:shared_preferences/shared_preferences.dart'; class MockSharedPreferences extends Mock diff --git a/packages/app/test/helpers/pump_app.dart b/packages/app/test/helpers/pump_app.dart index 8ac3c560..80e17dda 100644 --- a/packages/app/test/helpers/pump_app.dart +++ b/packages/app/test/helpers/pump_app.dart @@ -3,9 +3,9 @@ library; import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; +import 'package:harvest_hub/src/l10n/l10n.dart'; +import 'package:harvest_hub/src/utils/design.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:nexus/src/l10n/l10n.dart'; -import 'package:nexus/src/utils/design.dart'; import 'riverpod.dart'; diff --git a/packages/app/test/src/app/app_test.dart b/packages/app/test/src/app/app_test.dart index 06c049f7..766124fd 100644 --- a/packages/app/test/src/app/app_test.dart +++ b/packages/app/test/src/app/app_test.dart @@ -2,13 +2,13 @@ import 'package:checks/checks.dart'; import 'package:flutter/material.dart'; import 'package:flutter_checks/flutter_checks.dart'; import 'package:flutter_test/flutter_test.dart'; +import 'package:harvest_hub/src/app/app.dart'; +import 'package:harvest_hub/src/features/auth/data/auth_repository.dart'; +import 'package:harvest_hub/src/features/settings/application/settings_service.dart'; +import 'package:harvest_hub/src/features/settings/data/preferences_repository.dart'; +import 'package:harvest_hub/src/l10n/l10n.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:mocktail/mocktail.dart'; -import 'package:nexus/src/app/app.dart'; -import 'package:nexus/src/features/auth/data/auth_repository.dart'; -import 'package:nexus/src/features/settings/application/settings_service.dart'; -import 'package:nexus/src/features/settings/data/preferences_repository.dart'; -import 'package:nexus/src/l10n/l10n.dart'; import '../../helpers/mocks.dart'; diff --git a/packages/app/test/src/app/bootstrap_test.dart b/packages/app/test/src/app/bootstrap_test.dart index 78d77a9c..a833b503 100644 --- a/packages/app/test/src/app/bootstrap_test.dart +++ b/packages/app/test/src/app/bootstrap_test.dart @@ -1,8 +1,8 @@ import 'package:checks/checks.dart'; import 'package:flutter/widgets.dart'; import 'package:flutter_test/flutter_test.dart'; +import 'package:harvest_hub/src/app/app.dart'; import 'package:mocktail/mocktail.dart'; -import 'package:nexus/src/app/app.dart'; import 'package:shared_preferences/shared_preferences.dart'; import '../../helpers/mocks.dart'; diff --git a/packages/app/test/src/app/router_test.dart b/packages/app/test/src/app/router_test.dart index 2627933d..9da7da68 100644 --- a/packages/app/test/src/app/router_test.dart +++ b/packages/app/test/src/app/router_test.dart @@ -1,7 +1,7 @@ import 'package:auto_route/auto_route.dart'; import 'package:checks/checks.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:nexus/src/utils/router.dart'; +import 'package:harvest_hub/src/utils/router.dart'; import '../../helpers/riverpod.dart'; diff --git a/packages/app/test/src/app/wrapper_page_test.dart b/packages/app/test/src/app/wrapper_page_test.dart index 11f73932..85f2ab60 100644 --- a/packages/app/test/src/app/wrapper_page_test.dart +++ b/packages/app/test/src/app/wrapper_page_test.dart @@ -2,15 +2,15 @@ import 'package:checks/checks.dart'; import 'package:flutter/material.dart'; import 'package:flutter_checks/flutter_checks.dart'; import 'package:flutter_test/flutter_test.dart'; +import 'package:harvest_hub/src/app/router.gr.dart'; +import 'package:harvest_hub/src/app/wrapper_page.dart'; +import 'package:harvest_hub/src/features/auth/application/auth_service.dart'; +import 'package:harvest_hub/src/features/auth/data/auth_repository.dart'; +import 'package:harvest_hub/src/l10n/l10n.dart'; +import 'package:harvest_hub/src/utils/design.dart'; +import 'package:harvest_hub/src/utils/router.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:mocktail/mocktail.dart'; -import 'package:nexus/src/app/router.gr.dart'; -import 'package:nexus/src/app/wrapper_page.dart'; -import 'package:nexus/src/features/auth/application/auth_service.dart'; -import 'package:nexus/src/features/auth/data/auth_repository.dart'; -import 'package:nexus/src/l10n/l10n.dart'; -import 'package:nexus/src/utils/design.dart'; -import 'package:nexus/src/utils/router.dart'; import '../../helpers/mocks.dart'; import '../../helpers/riverpod.dart'; diff --git a/packages/app/test/src/features/home/presentation/home/feed_test.dart b/packages/app/test/src/features/home/presentation/home/feed_test.dart index 7ca06b5e..0da21ec2 100644 --- a/packages/app/test/src/features/home/presentation/home/feed_test.dart +++ b/packages/app/test/src/features/home/presentation/home/feed_test.dart @@ -2,9 +2,9 @@ import 'package:checks/checks.dart'; import 'package:flutter/material.dart'; import 'package:flutter_checks/flutter_checks.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:nexus/src/features/home/data/post_repository.dart'; -import 'package:nexus/src/features/home/domain/feed_entity.dart'; -import 'package:nexus/src/features/home/presentation/home/feed.dart'; +import 'package:harvest_hub/src/features/home/data/post_repository.dart'; +import 'package:harvest_hub/src/features/home/domain/feed_entity.dart'; +import 'package:harvest_hub/src/features/home/presentation/home/feed.dart'; import '../../../../../helpers/accessibility.dart'; import '../../../../../helpers/pump_app.dart'; diff --git a/packages/app/test/src/features/home/presentation/home/local_feed_page_test.dart b/packages/app/test/src/features/home/presentation/home/local_feed_page_test.dart index 5e0b3e04..b6f7798b 100644 --- a/packages/app/test/src/features/home/presentation/home/local_feed_page_test.dart +++ b/packages/app/test/src/features/home/presentation/home/local_feed_page_test.dart @@ -1,8 +1,8 @@ import 'package:checks/checks.dart'; import 'package:flutter_checks/flutter_checks.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:nexus/src/features/home/presentation/home/feed.dart'; -import 'package:nexus/src/features/home/presentation/home/local_feed_page.dart'; +import 'package:harvest_hub/src/features/home/presentation/home/feed.dart'; +import 'package:harvest_hub/src/features/home/presentation/home/local_feed_page.dart'; import '../../../../../helpers/accessibility.dart'; import '../../../../../helpers/pump_app.dart'; diff --git a/packages/app/test/src/features/home/presentation/home/world_feed_page_test.dart b/packages/app/test/src/features/home/presentation/home/world_feed_page_test.dart index 4802fabc..4b14c8ae 100644 --- a/packages/app/test/src/features/home/presentation/home/world_feed_page_test.dart +++ b/packages/app/test/src/features/home/presentation/home/world_feed_page_test.dart @@ -1,8 +1,8 @@ import 'package:checks/checks.dart'; import 'package:flutter_checks/flutter_checks.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:nexus/src/features/home/presentation/home/feed.dart'; -import 'package:nexus/src/features/home/presentation/home/world_feed_page.dart'; +import 'package:harvest_hub/src/features/home/presentation/home/feed.dart'; +import 'package:harvest_hub/src/features/home/presentation/home/world_feed_page.dart'; import '../../../../../helpers/accessibility.dart'; import '../../../../../helpers/pump_app.dart'; diff --git a/packages/app/test/src/features/maps/presentation/map/map_page_test.dart b/packages/app/test/src/features/maps/presentation/map/map_page_test.dart index 3a5117c4..cbf00d2e 100644 --- a/packages/app/test/src/features/maps/presentation/map/map_page_test.dart +++ b/packages/app/test/src/features/maps/presentation/map/map_page_test.dart @@ -2,7 +2,7 @@ import 'package:checks/checks.dart'; import 'package:flutter_checks/flutter_checks.dart'; import 'package:flutter_map/flutter_map.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:nexus/src/features/map/presentation/items/map_page.dart'; +import 'package:harvest_hub/src/features/map/presentation/items/map_page.dart'; import '../../../../../helpers/accessibility.dart'; import '../../../../../helpers/pump_app.dart'; diff --git a/packages/app/test/src/features/maps/presentation/map_info/map_info_page_test.dart b/packages/app/test/src/features/maps/presentation/map_info/map_info_page_test.dart index dcd4867c..55f66431 100644 --- a/packages/app/test/src/features/maps/presentation/map_info/map_info_page_test.dart +++ b/packages/app/test/src/features/maps/presentation/map_info/map_info_page_test.dart @@ -2,7 +2,7 @@ import 'package:checks/checks.dart'; import 'package:flutter/material.dart'; import 'package:flutter_checks/flutter_checks.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:nexus/src/features/map/presentation/items/map_info_page.dart'; +import 'package:harvest_hub/src/features/map/presentation/items/map_info_page.dart'; import '../../../../../helpers/accessibility.dart'; import '../../../../../helpers/pump_app.dart'; diff --git a/packages/app/test/src/features/settings/application/settings_service_test.dart b/packages/app/test/src/features/settings/application/settings_service_test.dart index ed5f2dc1..b54f3319 100644 --- a/packages/app/test/src/features/settings/application/settings_service_test.dart +++ b/packages/app/test/src/features/settings/application/settings_service_test.dart @@ -1,10 +1,10 @@ import 'package:checks/checks.dart'; import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; +import 'package:harvest_hub/src/features/settings/application/settings_service.dart'; +import 'package:harvest_hub/src/features/settings/data/preferences_repository.dart'; +import 'package:harvest_hub/src/features/settings/domain/settings_model.dart'; import 'package:mocktail/mocktail.dart'; -import 'package:nexus/src/features/settings/application/settings_service.dart'; -import 'package:nexus/src/features/settings/data/preferences_repository.dart'; -import 'package:nexus/src/features/settings/domain/settings_model.dart'; import '../../../../helpers/mocks.dart'; import '../../../../helpers/riverpod.dart'; diff --git a/packages/app/test/src/features/settings/data/preferences_repository_test.dart b/packages/app/test/src/features/settings/data/preferences_repository_test.dart index 641255f5..e4ff00b4 100644 --- a/packages/app/test/src/features/settings/data/preferences_repository_test.dart +++ b/packages/app/test/src/features/settings/data/preferences_repository_test.dart @@ -1,9 +1,9 @@ import 'package:checks/checks.dart'; import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; +import 'package:harvest_hub/src/features/settings/application/settings_service.dart'; +import 'package:harvest_hub/src/features/settings/data/preferences_repository.dart'; import 'package:mocktail/mocktail.dart'; -import 'package:nexus/src/features/settings/application/settings_service.dart'; -import 'package:nexus/src/features/settings/data/preferences_repository.dart'; import '../../../../helpers/mocks.dart'; import '../../../../helpers/riverpod.dart'; diff --git a/packages/app/test/src/features/settings/domain/settings_model_test.dart b/packages/app/test/src/features/settings/domain/settings_model_test.dart index f3ae1a47..273476ad 100644 --- a/packages/app/test/src/features/settings/domain/settings_model_test.dart +++ b/packages/app/test/src/features/settings/domain/settings_model_test.dart @@ -1,7 +1,7 @@ import 'package:checks/checks.dart'; import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:nexus/src/features/settings/domain/settings_model.dart'; +import 'package:harvest_hub/src/features/settings/domain/settings_model.dart'; void main() { group('SettingsModel', () { diff --git a/packages/app/test/src/features/settings/presentation/preferences/settings_page_test.dart b/packages/app/test/src/features/settings/presentation/preferences/settings_page_test.dart index 5a70cf0b..ecaea38c 100644 --- a/packages/app/test/src/features/settings/presentation/preferences/settings_page_test.dart +++ b/packages/app/test/src/features/settings/presentation/preferences/settings_page_test.dart @@ -4,11 +4,11 @@ import 'package:checks/checks.dart'; import 'package:flutter/material.dart'; import 'package:flutter_checks/flutter_checks.dart'; import 'package:flutter_test/flutter_test.dart'; +import 'package:harvest_hub/src/features/settings/application/settings_service.dart'; +import 'package:harvest_hub/src/features/settings/data/preferences_repository.dart'; +import 'package:harvest_hub/src/features/settings/domain/settings_model.dart'; +import 'package:harvest_hub/src/features/settings/presentation/preferences/settings_page.dart'; import 'package:mocktail/mocktail.dart'; -import 'package:nexus/src/features/settings/application/settings_service.dart'; -import 'package:nexus/src/features/settings/data/preferences_repository.dart'; -import 'package:nexus/src/features/settings/domain/settings_model.dart'; -import 'package:nexus/src/features/settings/presentation/preferences/settings_page.dart'; import '../../../../../helpers/accessibility.dart'; import '../../../../../helpers/mocks.dart'; diff --git a/packages/app/test/src/l10n/l10n_test.dart b/packages/app/test/src/l10n/l10n_test.dart index 7d339eee..fca5778a 100644 --- a/packages/app/test/src/l10n/l10n_test.dart +++ b/packages/app/test/src/l10n/l10n_test.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:nexus/src/l10n/l10n.dart'; +import 'package:harvest_hub/src/l10n/l10n.dart'; import '../../helpers/pump_app.dart'; diff --git a/packages/app/web/favicon.png b/packages/app/web/favicon.png index fe4c91a6..853a6cdc 100644 Binary files a/packages/app/web/favicon.png and b/packages/app/web/favicon.png differ diff --git a/packages/app/web/icons/Icon-192.png b/packages/app/web/icons/Icon-192.png index 66cc03f5..7d3443e1 100644 Binary files a/packages/app/web/icons/Icon-192.png and b/packages/app/web/icons/Icon-192.png differ diff --git a/packages/app/web/icons/Icon-512.png b/packages/app/web/icons/Icon-512.png index cffa5501..c741ff6a 100644 Binary files a/packages/app/web/icons/Icon-512.png and b/packages/app/web/icons/Icon-512.png differ diff --git a/packages/app/web/icons/Icon-maskable-192.png b/packages/app/web/icons/Icon-maskable-192.png index 66cc03f5..7d3443e1 100644 Binary files a/packages/app/web/icons/Icon-maskable-192.png and b/packages/app/web/icons/Icon-maskable-192.png differ diff --git a/packages/app/web/icons/Icon-maskable-512.png b/packages/app/web/icons/Icon-maskable-512.png index cffa5501..c741ff6a 100644 Binary files a/packages/app/web/icons/Icon-maskable-512.png and b/packages/app/web/icons/Icon-maskable-512.png differ diff --git a/packages/app/web/index.html b/packages/app/web/index.html index 6abbd013..0a4ea1b2 100644 --- a/packages/app/web/index.html +++ b/packages/app/web/index.html @@ -17,13 +17,13 @@ --> - Town Talk + Harvest Hub - + @@ -113,6 +113,12 @@ bottom: 0; right: 0; } + + @media (prefers-color-scheme: dark) { + body { + background-color: #2e2e2e; + } + }